diff --git a/blob.rst b/blob.rst
index 52c730a..8867d3d 100644
--- a/blob.rst
+++ b/blob.rst
@@ -12,8 +12,11 @@
 
 A Blob holds a pointer to an immutable byte array implemented as const std::vector<uint8_t>.  This is like a JavaScript string which is a pointer to an immutable string.  It is OK to pass a pointer to the string because the new owner can't change the bytes of the string.  However, like a JavaScript string, it is possible to change the pointer, and so this does allow the copy constructor and assignment to change the pointer.  Also remember that the pointer can be null.
 
-Blob Constructor
-----------------
+Blob Constructors
+-----------------
+
+Blob Constructor (from existing byte array)
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Create a new Blob to point to an existing byte array.
 
@@ -50,8 +53,8 @@
     - `value`
         (optional) A pointer to a vector with the byte array.  This takes another reference and does not copy the bytes.  If omitted, this set this blob to a null pointer.
 
-Blob Constructor (``uint8_t *``)
---------------------------------
+Blob Constructor (from immutable ``uint8_t *`` array) (C++ only)
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 (C++ only) Create a new Blob with an immutable copy of the given array.
 
@@ -75,7 +78,7 @@
         The length of value.
 
 Blob Constructor (copy byte array)
-----------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Create a new Blob with an immutable copy of the array in the given vector. If you want to transfer the array without copying, the the vector has to start as a type for the main Blob constructor.
 
diff --git a/face.rst b/face.rst
index 77cce7f..1faf5c6 100644
--- a/face.rst
+++ b/face.rst
@@ -9,8 +9,11 @@
 :[Python]:
     Module: ``pyndn``
 
+Face Constructors
+-----------------
+
 Face Constructor (explicit Transport)
--------------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Create a new Face object with the given Transport to manage NDN communication.
 
@@ -61,7 +64,7 @@
             port: 9696
 
 Face Constructor (default Transport)
-------------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Create a new Face object with optional settings to manage NDN communication.
 
@@ -111,8 +114,11 @@
             host: null, // If null, use getHostAndPort when connecting.
             port: 9696
 
+Face.expressInterest Methods
+----------------------------
+
 Face.expressInterest Method (from Interest)
--------------------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Send the interest through the transport, read the entire response and call onData. If the interest times out according to interest lifetime, call onTimeout (if not omitted).
 
@@ -167,7 +173,7 @@
     The pending interest ID which can be used with removePendingInterest.
 
 Face.expressInterest Method (from Name)
----------------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Encode name as an Interest, using the interestTemplate if supplied, send the interest through the transport, read the entire response and call onData. If the interest times out according to interest lifetime, call onTimeout (if not omitted).
 C++ only: Your application must call processEvents.
diff --git a/name.rst b/name.rst
index fb217b2..6ca5af3 100644
--- a/name.rst
+++ b/name.rst
@@ -19,7 +19,7 @@
 
     .. code-block:: c++
     
-        ndn::Name::Component(
+        Name::Component(
             [const std::vector<uint8_t>& value]
         );
 
@@ -56,8 +56,11 @@
 :[Python]:
     Module: ``pyndn``
 
+Name Constructors
+-----------------
+
 Name Constructor (array of components)
---------------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Create a new Name with the optional components.
 
@@ -88,10 +91,10 @@
 :Parameters:
 
     - ``components``
-        (optional) The array of name components.
+        (optional) The array of :ref:`name components <Name.Component>`.
 
 Name Constructor (from URI)
----------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Parse the uri according to the NDN URI Scheme and create the Name with the components.
 
@@ -266,8 +269,11 @@
 
     true if this matches the given name, otherwise false.  This always returns true if this name is empty.
 
+Name.append Methods
+-------------------
+
 Name.append Method (copy byte array)
-------------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Append a new component, copying from byte array.
 
@@ -298,7 +304,7 @@
     This name so that you can chain calls to append.
 
 Name.append Method (from Blob)
-------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Append a new component, taking another pointer to the byte array in the Blob.
 
@@ -320,7 +326,7 @@
     This name so that you can chain calls to append.
 
 Name.append Method (from Component)
------------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Append the component to this name.
 
@@ -342,7 +348,7 @@
     This name so that you can chain calls to append.
 
 Name.append Method (from Name)
-------------------------------
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Append the components of the given name to this name.
 
diff --git a/transport.rst b/transport.rst
index 3cc9361..9458b4a 100644
--- a/transport.rst
+++ b/transport.rst
@@ -1,28 +1,20 @@
-Transport.ConnectionInfo Class
-==============================
-
-:[C++]:
-    Namespace: `ndn`
-
-
-A Transport.ConnectionInfo is a base class for connection information used by subclasses of Transport.
-
 Transport Class
 ===============
 
 :[C++]:
     Namespace: `ndn`
 
-Transport Constructor
----------------------
-
-Create a base class Transport where the methods throw an "unimplemented" error. You should use a derived class like :ref:`UdpTransport <UdpTransport>`.
-
 :Realizations:
 
     - :ref:`UdpTransport Class <UdpTransport>`
     - :ref:`TcpTransport Class <TcpTransport>`
 
+
+Transport Constructor
+---------------------
+
+Create a base class Transport where the methods throw an "unimplemented" error. You should use a derived class like :ref:`UdpTransport <UdpTransport>`.
+
 :[C++]:
 
     .. code-block:: c++
@@ -36,3 +28,11 @@
         var Transport = function Transport()
 
 
+Transport.ConnectionInfo Class
+------------------------------
+
+:[C++]:
+    Namespace: `ndn`
+
+
+A Transport.ConnectionInfo is a base class for connection information used by subclasses of Transport.
