Fix docs inconsistencies

Change-Id: Ie3f767d537206ed4c326c7a504825cc751817c61
diff --git a/docs/source/nnls_modeling.rst b/docs/source/nnls_modeling.rst
index be8e958..4f754c9 100644
--- a/docs/source/nnls_modeling.rst
+++ b/docs/source/nnls_modeling.rst
@@ -292,13 +292,13 @@
                Dimension of x ------------------------------------+  |
                Dimension of y ---------------------------------------+
 
-   **WARNING 1** A common beginner's error when first using
-   :class:`AutoDiffCostFunction` is to get the sizing wrong. In particular,
-   there is a tendency to set the template parameters to (dimension of
-   residual, number of parameters) instead of passing a dimension
-   parameter for *every parameter block*. In the example above, that
-   would be ``<MyScalarCostFunction, 1, 2>``, which is missing the 2
-   as the last template argument.
+   .. warning::
+       A common beginner's error when first using :class:`AutoDiffCostFunction`
+       is to get the sizing wrong. In particular, there is a tendency to set the
+       template parameters to (dimension of residual, number of parameters)
+       instead of passing a dimension parameter for *every parameter block*. In
+       the example above, that would be ``<MyScalarCostFunction, 1, 2>``, which
+       is missing the 2 as the last template argument.
 
 
 :class:`DynamicAutoDiffCostFunction`
@@ -504,14 +504,14 @@
   results, either try forward difference to improve performance or
   Ridders' method to improve accuracy.
 
-  **WARNING** A common beginner's error when first using
-  :class:`NumericDiffCostFunction` is to get the sizing wrong. In
-  particular, there is a tendency to set the template parameters to
-  (dimension of residual, number of parameters) instead of passing a
-  dimension parameter for *every parameter*. In the example above,
-  that would be ``<MyScalarCostFunctor, 1, 2>``, which is missing the
-  last ``2`` argument. Please be careful when setting the size
-  parameters.
+  .. warning::
+      A common beginner's error when first using
+      :class:`NumericDiffCostFunction` is to get the sizing wrong. In
+      particular, there is a tendency to set the template parameters to
+      (dimension of residual, number of parameters) instead of passing a
+      dimension parameter for *every parameter*. In the example above, that
+      would be ``<MyScalarCostFunctor, 1, 2>``, which is missing the last ``2``
+      argument. Please be careful when setting the size parameters.
 
 
 Numeric Differentiation & Manifolds
@@ -621,9 +621,9 @@
    As a rule of thumb, try using :class:`NumericDiffCostFunction` before
    you use :class:`DynamicNumericDiffCostFunction`.
 
-   **WARNING** The same caution about mixing manifolds with numeric
-   differentiation applies as is the case with
-   :class:`NumericDiffCostFunction`.
+   .. warning::
+       The same caution about mixing manifolds with numeric differentiation
+       applies as is the case with :class:`NumericDiffCostFunction`.
 
 :class:`CostFunctionToFunctor`
 ==============================
@@ -1264,9 +1264,9 @@
 
 A more interesting case is the case :math:`SO(3)`, the `special
 orthogonal group <https://en.wikipedia.org/wiki/3D_rotation_group>`_
-in three dimensions - the space of 3x3 rotation
+in three dimensions - the space of :math:`3\times3` rotation
 matrices. :math:`SO(3)` is a three dimensional manifold embedded in
-:math:`R^9` or :math:`R^{3\times 3}`.  So points on :math:`SO(3)` are
+:math:`\mathbb{R}^9` or :math:`\mathbb{R}^{3\times 3}`.  So points on :math:`SO(3)` are
 represented using 9 dimensional vectors or :math:`3\times 3` matrices,
 and points in its tangent spaces are represented by 3 dimensional
 vectors.
@@ -1303,17 +1303,18 @@
 
 where,
 
-.. math:: \theta = cos^{-1}((\operatorname{Trace}(x) - 1)/2)
+.. math:: \theta = \cos^{-1}((\operatorname{Trace}(x) - 1)/2)
 
 Then,
 
 .. math::
    \begin{align*}
    \boxplus(x, \Delta) &= x \exp(\Delta)
+   \\
    \boxminus(y, x) &= \log(x^T y)
    \end{align*}
 
-For :math:`\boxplus` and :math:`\boxplus` to be mathematically
+For :math:`\boxplus` and :math:`\boxminus` to be mathematically
 consistent, the following identities must be satisfied at all points
 :math:`x` on the manifold:
 
@@ -1327,7 +1328,7 @@
    \Delta`. This ensures that :math:`\boxplus` is an injective
    (one-to-one) map.
 4. For all :math:`\Delta_1, \Delta_2\ |\boxminus(\boxplus(x, \Delta_1),
-   \boxplus(x, \Delta_2)) <= |\Delta_1 - \Delta_2|`. Allows us to define
+   \boxplus(x, \Delta_2)) \leq |\Delta_1 - \Delta_2|`. Allows us to define
    a metric on the manifold.
 
 Additionally we require that :math:`\boxplus` and :math:`\boxminus` be
@@ -1342,9 +1343,9 @@
 The :class:`Manifold` interface allows the user to define a manifold
 for the purposes optimization by implementing ``Plus`` and ``Minus``
 operations and their derivatives (corresponding naturally to
-:math:`\boxplus` and :math:`boxminus`).
+:math:`\boxplus` and :math:`\boxminus`).
 
-..code-block c++::
+.. code-block:: c++
 
   class Manifold {
    public:
@@ -1391,7 +1392,7 @@
 .. function:: bool PlusJacobian(const double* x, double* jacobian) const;
 
    Compute the derivative of :math:`\boxplus(x, \Delta)` w.r.t
-   :math:`\Delta` at :\math:`\Delta = 0`, i.e. :math:`(D_2
+   :math:`\Delta` at :math:`\Delta = 0`, i.e. :math:`(D_2
    \boxplus)(x, 0)`.
 
    ``jacobian`` is a row-major :func:`Manifold::AmbientSize`
@@ -1554,7 +1555,7 @@
 <https://en.wikipedia.org/wiki/Quaternion>`_. Quaternions are a three
 dimensional manifold represented as unit norm 4-vectors, i.e.
 
-.. math:: q = \left [\begin{matrix}q_0,& q_1,& q_2,& q_3\end{matrix}\right], \|q\| = 1
+.. math:: q = \left [\begin{matrix}q_0,& q_1,& q_2,& q_3\end{matrix}\right], \quad \|q\| = 1
 
 is the ambient space representation. Here :math:`q_0` is the scalar
 part. :math:`q_1` is the coefficient of :math:`i`, :math:`q_2` is the
@@ -1577,9 +1578,10 @@
 :math:`\log` operations.
 
 .. math::
-
-   \boxplus(x, \Delta) = \exp\left(\Delta\right) \otimes  x \\
-   \boxminus(y,x) = \log\left(y \otimes x^{-1}\right)
+   \begin{align*}
+   \boxplus(x, \Delta) &= \exp\left(\Delta\right) \otimes  x \\
+   \boxminus(y,x) &= \log\left(y \otimes x^{-1}\right)
+   \end{align*}
 
 Where :math:`\otimes` is the `Quaternion product
 <https://en.wikipedia.org/wiki/Quaternion#Hamilton_product>`_ and
@@ -1678,7 +1680,7 @@
 
 .. class:: AutoDiffManifold
 
-Create a :math:`Manifold` with Jacobians computed via automatic
+Create a :class:`Manifold` with Jacobians computed via automatic
 differentiation.
 
 To get an auto differentiated manifold, you must define a Functor with
@@ -1726,7 +1728,7 @@
 .. NOTE::
 
    The following is only used for illustration purposes. Ceres Solver
-   ships with an optimized, production grade :math:`QuaternionManifold`
+   ships with an optimized, production grade :class:`QuaternionManifold`
    implementation.
 
 As a concrete example consider the case of `Quaternions
@@ -1878,19 +1880,19 @@
 
   Let us consider two examples:
 
-  The Euclidean space :math:`R^n` is the simplest example of a
+  The Euclidean space :math:`\mathbb{R}^n` is the simplest example of a
   manifold. It has dimension :math:`n` (and so does its tangent space)
   and :math:`\boxplus` is the familiar vector sum operation.
 
     .. math:: \boxplus(x, \Delta) = x + \Delta
 
   A more interesting case is :math:`SO(3)`, the special orthogonal
-  group in three dimensions - the space of 3x3 rotation
+  group in three dimensions - the space of :math:`3\times3` rotation
   matrices. :math:`SO(3)` is a three dimensional manifold embedded in
-  :math:`R^9` or :math:`R^{3\times 3}`.
+  :math:`\mathbb{R}^9` or :math:`\mathbb{R}^{3\times 3}`.
 
   :math:`\boxplus` on :math:`SO(3)` is defined using the *Exponential*
-  map, from the tangent space (:math:`R^3`) to the manifold. The
+  map, from the tangent space (:math:`\mathbb{R}^3`) to the manifold. The
   Exponential map :math:`\operatorname{Exp}` is defined as:
 
   .. math::
@@ -1923,7 +1925,7 @@
 
      class LocalParameterization {
       public:
-       virtual ~LocalParameterization() {}
+       virtual ~LocalParameterization() = default;
        virtual bool Plus(const double* x,
                          const double* delta,
                          double* x_plus_delta) const = 0;
@@ -2008,9 +2010,9 @@
 is when camera rotations are parameterized using a quaternion. This is
 a 3-dimensional manifold that lives in 4-dimensional space.
 
-.. math:: \boxplus(x, \Delta) = \left[ \cos(|\Delta|), \frac{\sin\left(|\Delta|\right)}{|\Delta|} \Delta \right] * x
+.. math:: \boxplus(x, \Delta) = \left[ \cos(|\Delta|), \frac{\sin\left(|\Delta|\right)}{|\Delta|} \Delta \right] \otimes x
 
-The multiplication :math:`*` between the two 4-vectors on the right
+The multiplication :math:`\otimes` between the two 4-vectors on the right
 hand side is the standard quaternion product.
 
 :class:`EigenQuaternionParameterization`
@@ -2330,7 +2332,7 @@
    This option controls whether the Problem object owns the cost
    functions.
 
-   If set to TAKE_OWNERSHIP, then the problem object will delete the
+   If set to ``TAKE_OWNERSHIP``, then the problem object will delete the
    cost functions on destruction. The destructor is careful to delete
    the pointers only once, since sharing cost functions is allowed.
 
@@ -2341,7 +2343,7 @@
    This option controls whether the Problem object owns the loss
    functions.
 
-   If set to TAKE_OWNERSHIP, then the problem object will delete the
+   If set to ``TAKE_OWNERSHIP``, then the problem object will delete the
    loss functions on destruction. The destructor is careful to delete
    the pointers only once, since sharing loss functions is allowed.
 
@@ -2359,7 +2361,7 @@
    This option controls whether the Problem object owns the local
    parameterizations.
 
-   If set to TAKE_OWNERSHIP, then the problem object will delete the
+   If set to ``TAKE_OWNERSHIP``, then the problem object will delete the
    local parameterizations on destruction. The destructor is careful
    to delete the pointers only once, since sharing local
    parameterizations is allowed.
@@ -2370,7 +2372,7 @@
 
    This option controls whether the Problem object owns the manifolds.
 
-   If set to TAKE_OWNERSHIP, then the problem object will delete the
+   If set to ``TAKE_OWNERSHIP``, then the problem object will delete the
    manifolds on destruction. The destructor is careful to delete the
    pointers only once, since sharing manifolds is allowed.
 
@@ -2409,12 +2411,13 @@
     overhead you want to avoid, then you can set
     disable_all_safety_checks to true.
 
-    **WARNING** Do not set this to true, unless you are absolutely
-    sure of what you are doing.
+    .. warning::
+        Do not set this to true, unless you are absolutely sure of what you are
+        doing.
 
 .. member:: Context* Problem::Options::context
 
-    Default: `nullptr`
+    Default: ``nullptr``
 
     A Ceres global context to use for solving this problem. This may
     help to reduce computation time as Ceres can reuse expensive
@@ -2425,7 +2428,7 @@
 
 .. member:: EvaluationCallback* Problem::Options::evaluation_callback
 
-    Default: `nullptr`
+    Default: ``nullptr``
 
     Using this callback interface, Ceres will notify you when it is
     about to evaluate the residuals or Jacobians.
@@ -2445,7 +2448,7 @@
 
        Evaluation callbacks are incompatible with inner iterations. So
        calling Solve with
-       :member:`Solver::Options::use_inner_iterations` set to `true`
+       :member:`Solver::Options::use_inner_iterations` set to ``true``
        on a :class:`Problem` with a non-null evaluation callback is an
        error.
 
@@ -2458,7 +2461,7 @@
    parameter blocks it expects. The function checks that these match
    the sizes of the parameter blocks listed in parameter_blocks. The
    program aborts if a mismatch is detected. loss_function can be
-   `nullptr`, in which case the cost of the term is just the squared
+   ``nullptr``, in which case the cost of the term is just the squared
    norm of the residuals.
 
    The parameter blocks may be passed together as a
@@ -2476,11 +2479,12 @@
    keep control over the destruction of these objects, then they can
    do this by setting the corresponding enums in the Options struct.
 
-   Note: Even though the Problem takes ownership of cost_function
-   and loss_function, it does not preclude the user from re-using
-   them in another residual block. The destructor takes care to call
-   delete on each cost_function or loss_function pointer only once,
-   regardless of how many residual blocks refer to them.
+   .. note::
+       Even though the Problem takes ownership of ``cost_function``
+       and ``loss_function``, it does not preclude the user from re-using
+       them in another residual block. The destructor takes care to call
+       delete on each cost_function or loss_function pointer only once,
+       regardless of how many residual blocks refer to them.
 
    Example usage:
 
@@ -2520,11 +2524,11 @@
        :func:`LocalParameterization::LocalSize`.
 
    Add a parameter block with appropriate size and parameterization to the
-   problem. It is okay for `local_parameterization` to be `nullptr`.
+   problem. It is okay for ``local_parameterization`` to be ``nullptr``.
 
    Repeated calls with the same arguments are ignored. Repeated calls
    with the same double pointer but a different size results in a crash
-   (unless `Solver::Options::diable_all_safety_checks` is set to true).
+   (unless :member:`Solver::Options::diable_all_safety_checks` is set to ``true``).
 
    Repeated calls with the same double pointer and size but different
    :class:`LocalParameterization` is equivalent to calling
@@ -2546,11 +2550,11 @@
       :class:`Manifold` object will be replaced with the manifold.
 
    Add a parameter block with appropriate size and Manifold to the
-   problem. It is okay for `manifold` to be `nullptr`.
+   problem. It is okay for ``manifold`` to be ``nullptr``.
 
    Repeated calls with the same arguments are ignored. Repeated calls
    with the same double pointer but a different size results in a crash
-   (unless `Solver::Options::diable_all_safety_checks` is set to true).
+   (unless :member:`Solver::Options::diable_all_safety_checks` is set to true).
 
    Repeated calls with the same double pointer and size but different
    :class:`Manifold` is equivalent to calling `SetManifold(manifold)`,
@@ -2574,36 +2578,38 @@
    for the corresponding cost function and loss function objects are
    decreased and when this count reaches zero, they are deleted.
 
-   If Problem::Options::enable_fast_removal is true, then the removal
+   If :member:`Problem::Options::enable_fast_removal` is ``true``, then the removal
    is fast (almost constant time). Otherwise it is linear, requiring a
    scan of the entire problem.
 
    Removing a residual block has no effect on the parameter blocks
    that the problem depends on.
 
-   **WARNING:** Removing a residual or parameter block will destroy
-   the implicit ordering, rendering the jacobian or residuals returned
-   from the solver uninterpretable. If you depend on the evaluated
-   jacobian, do not use remove! This may change in a future release.
-   Hold the indicated parameter block constant during optimization.
+   .. warning::
+       Removing a residual or parameter block will destroy the implicit
+       ordering, rendering the jacobian or residuals returned from the solver
+       uninterpretable. If you depend on the evaluated jacobian, do not use
+       remove! This may change in a future release. Hold the indicated parameter
+       block constant during optimization.
 
 .. function:: void Problem::RemoveParameterBlock(const double* values)
 
    Remove a parameter block from the problem. Any residual blocks that
    depend on the parameter are also removed, as described above in
-   RemoveResidualBlock().
+   :func:`RemoveResidualBlock()`.
 
    The parameterization of the parameter block, if it exists, will
    persist until the deletion of the problem.
 
-   If Problem::Options::enable_fast_removal is true, then the removal
+   If :member:`Problem::Options::enable_fast_removal` is ``true``, then the removal
    is fast (almost constant time). Otherwise, removing a parameter
    block will scan the entire Problem.
 
-   **WARNING:** Removing a residual or parameter block will destroy
-   the implicit ordering, rendering the jacobian or residuals returned
-   from the solver uninterpretable. If you depend on the evaluated
-   jacobian, do not use remove! This may change in a future release.
+   .. warning::
+       Removing a residual or parameter block will destroy the implicit
+       ordering, rendering the jacobian or residuals returned from the solver
+       uninterpretable. If you depend on the evaluated jacobian, do not use
+       remove! This may change in a future release.
 
 .. function:: void Problem::SetParameterBlockConstant(const double* values)
 
@@ -2657,7 +2663,7 @@
 
    Get the local parameterization object associated with this
    parameter block. If there is no parameterization object associated
-   then `nullptr` is returned
+   then ``nullptr`` is returned
 
    .. NOTE::
 
@@ -2687,7 +2693,7 @@
       This method is deprecated and will be removed in the next public
       release of Ceres Solver. Use :func:`Problem::HasManifold` instead.
 
-      Note also that if a ::class::`Manifold` is associated with the
+      Note also that if a :class:`Manifold` is associated with the
       parameter block, this method will return ``false``.
 
 .. function:: void SetManifold(double* values, Manifold* manifold);
@@ -2711,7 +2717,7 @@
 
    Get the :class:`Manifold` object associated with this parameter block.
 
-   If there is no :class:`Manifold` Or :class:`LocalParameterization`
+   If there is no :class:`Manifold` or :class:`LocalParameterization`
    object associated then ``nullptr`` is returned.
 
    .. NOTE::
@@ -2827,8 +2833,8 @@
    Get all the residual blocks that depend on the given parameter
    block.
 
-   If `Problem::Options::enable_fast_removal` is
-   `true`, then getting the residual blocks is fast and depends only
+   If :member:`Problem::Options::enable_fast_removal` is
+   ``true``, then getting the residual blocks is fast and depends only
    on the number of residual blocks. Otherwise, getting the residual
    blocks for a parameter block will scan the entire problem.
 
@@ -2902,7 +2908,7 @@
 .. function:: bool Problem::Evaluate(const Problem::EvaluateOptions& options, double* cost, vector<double>* residuals, vector<double>* gradient, CRSMatrix* jacobian)
 
    Evaluate a :class:`Problem`. Any of the output pointers can be
-   `nullptr`. Which residual blocks and parameter blocks are used is
+   ``nullptr``. Which residual blocks and parameter blocks are used is
    controlled by the :class:`Problem::EvaluateOptions` struct below.
 
    .. NOTE::
@@ -3006,7 +3012,7 @@
 
       class EvaluationCallback {
        public:
-        virtual ~EvaluationCallback() {}
+        virtual ~EvaluationCallback() = default;
         virtual void PrepareForEvaluation()(bool evaluate_jacobians
                                             bool new_evaluation_point) = 0;
       };
@@ -3024,7 +3030,7 @@
    different from the last evaluated point. Otherwise, it is the same
    point that was evaluated previously (either Jacobian or residual)
    and the user can use cached results from previous evaluations. If
-   ``evaluate_jacobians`` is true, then Ceres will request Jacobians
+   ``evaluate_jacobians`` is ``true``, then Ceres will request Jacobians
    in the upcoming cost evaluation.
 
    Using this callback interface, Ceres can notify you when it is
@@ -3093,14 +3099,14 @@
 .. function:: template <typename T> void RotationMatrixToAngleAxis(T const * R, T * angle_axis)
 .. function:: template <typename T> void AngleAxisToRotationMatrix(T const * angle_axis, T * R)
 
-   Conversions between 3x3 rotation matrix with given column and row strides and
+   Conversions between :math:`3\times3` rotation matrix with given column and row strides and
    axis-angle rotation representations. The functions that take a pointer to T instead
    of a MatrixAdapter assume a column major representation with unit row stride and a column stride of 3.
 
 .. function:: template <typename T, int row_stride, int col_stride> void EulerAnglesToRotationMatrix(const T* euler, const MatrixAdapter<T, row_stride, col_stride>& R)
 .. function:: template <typename T> void EulerAnglesToRotationMatrix(const T* euler, int row_stride, T* R)
 
-   Conversions between 3x3 rotation matrix with given column and row strides and
+   Conversions between :math:`3\times3` rotation matrix with given column and row strides and
    Euler angle (in degrees) rotation representations.
 
    The {pitch,roll,yaw} Euler angles are rotations around the {x,y,z}
@@ -3114,7 +3120,7 @@
 .. function:: template <typename T, int row_stride, int col_stride> void QuaternionToScaledRotation(const T q[4], const MatrixAdapter<T, row_stride, col_stride>& R)
 .. function:: template <typename T> void QuaternionToScaledRotation(const T q[4], T R[3 * 3])
 
-   Convert a 4-vector to a 3x3 scaled rotation matrix.
+   Convert a 4-vector to a :math:`3\times3` scaled rotation matrix.
 
    The choice of rotation is such that the quaternion
    :math:`\begin{bmatrix} 1 &0 &0 &0\end{bmatrix}` goes to an identity
@@ -3128,8 +3134,8 @@
 
    which corresponds to a Rodrigues approximation, the last matrix
    being the cross-product matrix of :math:`\begin{bmatrix} a& b&
-   c\end{bmatrix}`. Together with the property that :math:`R(q1 * q2)
-   = R(q1) * R(q2)` this uniquely defines the mapping from :math:`q` to
+   c\end{bmatrix}`. Together with the property that :math:`R(q_1 \otimes q_2)
+   = R(q_1) R(q_2)` this uniquely defines the mapping from :math:`q` to
    :math:`R`.
 
    In the function that accepts a pointer to T instead of a MatrixAdapter,
@@ -3138,7 +3144,7 @@
 
    No normalization of the quaternion is performed, i.e.
    :math:`R = \|q\|^2  Q`, where :math:`Q` is an orthonormal matrix
-   such that :math:`\det(Q) = 1` and :math:`Q*Q' = I`.
+   such that :math:`\det(Q) = 1` and :math:`QQ' = I`.
 
 
 .. function:: template <typename T> void QuaternionToRotation(const T q[4], const MatrixAdapter<T, row_stride, col_stride>& R)
@@ -3165,9 +3171,9 @@
 
 .. function:: template <typename T> void QuaternionProduct(const T z[4], const T w[4], T zw[4])
 
-   .. math:: zw = z * w
+   .. math:: zw = z \otimes w
 
-   where :math:`*` is the Quaternion product between 4-vectors.
+   where :math:`\otimes` is the Quaternion product between 4-vectors.
 
 
 .. function:: template <typename T> void CrossProduct(const T x[3], const T y[3], T x_cross_y[3])
diff --git a/docs/source/version_history.rst b/docs/source/version_history.rst
index 112bc4c..761fcb4 100644
--- a/docs/source/version_history.rst
+++ b/docs/source/version_history.rst
@@ -30,12 +30,12 @@
    results as a result of this change. (Sameer Agarwal, Johannes Beck,
    Sergiu Deitsch)
 
-#. A number of changes to ``Jet`` s (Sergiu Deitsch)
+#. A number of changes to :class:`Jet` s (Sergiu Deitsch)
 
-   * Jet gained support for, ``copysign``, ``fma`` (fused
+   * :class:`Jet` gained support for, ``copysign``, ``fma`` (fused
      multiply-add), ``midpoint`` (C++20 and above), ``lerp`` (C++20
      and above), 3-argument ``hypot`` (C++17 and above), ``log10``,
-     ``log1p``, ``exp1m``, ``norm`` (squared L^2 norm).
+     ``log1p``, ``exp1m``, ``norm`` (squared :math:`L^2` norm).
 
    * Quiet floating-point comparison: ``isless``, ``isgreater``,
      ``islessgreater``, ``islessequal``, ``isgreaterequal``,
@@ -46,8 +46,8 @@
      ``isinf``, ``isnormal``, ``isfinite``, ``fpclassify`` (new),
      ``fmin``, ``fmax``
 
-  * It is now possible to safely compare a ``Jet`` against a scalar
-    (or literal) without constructing a ``Jet`` first (even if it's
+  * It is now possible to safely compare a :class:`Jet` against a scalar
+    (or literal) without constructing a :class:`Jet` first (even if it's
     nested):
 
     .. code-block:: c++
@@ -69,15 +69,15 @@
 #. :class:`LocalParameterization` is deprecated. It will be removed in
    version 2.2. Use :class:`Manifold` instead.
 #. Classification functions like ``IsFinite`` are deprecated. Use the
-   ``c++11`` functions (``isfinite``, ``isnan`` etc) going
+   ``C++11`` functions (``isfinite``, ``isnan`` etc) going
    forward. However to maintain consistent behaviour with comparison
    operators, these functions only inspect the scalar part of the
-   ``Jet``.
+   :class:`Jet`.
 
 Bug Fixes & Minor Changes
 -------------------------
 
-#. Modernize the code to be inline with ``c++14`` (Sergiu Deitsch, Sameer
+#. Modernize the code to be inline with ``C++14`` (Sergiu Deitsch, Sameer
    Agarwal)
 #. Lots of fixes to make Ceres compile out of the box on Windows
    (Sergiu Deitsch)
@@ -131,12 +131,14 @@
 #. Make miniglog's InitGoogleLogging argument const (Tobias Schluter)
 #. Use portable expression for constant 2/sqrt(pi) (Tobias Schluter)
 #. Fix a number of compile errors related (Austin Schuch)
-   *. ``format not a string literal``
-   *. ``-Wno-maybe-uninitialized error``
-   *. ``nonnull arg compared to NULL``
-   *. ``-Wno-format-nonliteral``
-   *. ``-Wmissing-field-initializers``
-   *. ``-Werror``
+
+   * ``format not a string literal``
+   * ``-Wno-maybe-uninitialized error``
+   * ``nonnull arg compared to NULL``
+   * ``-Wno-format-nonliteral``
+   * ``-Wmissing-field-initializers``
+   * ``-Werror``
+
 #. Fix ``cc_binary`` includes so examples build as an external repo
    (Austin Schuh)
 #. Fix an explicit double in TinySolver (Bogdan Burlacu)