Refactor and modernize namespace declarations

 * Completely remove inline namespace v2
 * Flatten some unnecessarily deep namespace nesting
 * Move DummyClientFace, Segmenter, SegmentFetcher to namespace ndn
 * Move all unit tests to namespace ndn::tests

Change-Id: I8bcfcf9fd669936a3277d2d5d505f765b4b05742
diff --git a/docs/release-notes/release-notes-0.2.0.rst b/docs/release-notes/release-notes-0.2.0.rst
index 5d804bf..89d7c08 100644
--- a/docs/release-notes/release-notes-0.2.0.rst
+++ b/docs/release-notes/release-notes-0.2.0.rst
@@ -66,7 +66,7 @@
   + Introduce ``util::EventEmitter``, :ndn-cxx:`util::NotificationSubscriber`,
     :ndn-cxx:`util::NotificationStream`, and :ndn-cxx:`nfd::FaceMonitor` utility classes
 
-  + Introduce :ndn-cxx:`util::SegmentFetcher` helper class to fetch multi-segmented data
+  + Introduce :ndn-cxx:`SegmentFetcher` helper class to fetch multi-segmented data
     (:issue:`1879`)
 
 - **Build**
diff --git a/docs/release-notes/release-notes-0.5.1.rst b/docs/release-notes/release-notes-0.5.1.rst
index 8108300..2ba1ec1 100644
--- a/docs/release-notes/release-notes-0.5.1.rst
+++ b/docs/release-notes/release-notes-0.5.1.rst
@@ -63,27 +63,27 @@
 Deprecated
 ^^^^^^^^^^
 
-- Old security framework.  All old security framework classes are moved to
+- Old security framework.  All old security framework classes are moved to the
   ``ndn::security::v1`` namespace in this release and will be removed in the next release.
 
-  * ``v1::KeyChain``, use :ndn-cxx:`v2::KeyChain` instead
+  * ``v1::KeyChain``; use ``v2::KeyChain`` instead.
 
   * ``v1::Validator`` interface and all implementations of this interface (``ValidatorRegex``,
-    ``ValidatorConfig``, ``ValidatorNull``).  Use :ndn-cxx:`v2::Validator` and the
-    corresponding implementations of :ndn-cxx:`ValidationPolicy` interfaces (will be introduced
-    before 0.6.0 release).
+    ``ValidatorConfig``, ``ValidatorNull``).  Use ``v2::Validator`` and the corresponding
+    implementations of :ndn-cxx:`ValidationPolicy` interfaces (will be introduced before
+    the 0.6.0 release).
 
   * ``v1::SecPublicInfo`` and its implementation (``SecPublicInfoSqlite``), ``SecTpm`` and its
     implementations (``SecTpmFile``, ``SecTpmOsx``).  These classes are internal implementation
-    and not intended to be used without ``v1::KeyChain``.  :ndn-cxx:`v2::KeyChain` internally
-    uses the newly introduced :ndn-cxx:`Pib` and :ndn-cxx:`Tpm` interfaces with their
-    corresponding implementations.
+    and not intended to be used without ``v1::KeyChain``.  ``v2::KeyChain`` internally uses
+    the newly introduced :ndn-cxx:`Pib` and :ndn-cxx:`Tpm` interfaces with their corresponding
+    implementations.
 
   * ``v1::Certificate``, ``v1::IdentityCertificate``, ``v1::CertificateExtension``,
-    ``v1::CertificateSubjectDescription``, use :ndn-cxx:`v2::Certificate` and
-    :ndn-cxx:`AdditionalDescription`
+    ``v1::CertificateSubjectDescription``; use ``v2::Certificate`` and ``AdditionalDescription``
+    instead.
 
-  * ``v1::SecuredBag``, use ``v2::SafeBag`` instead
+  * ``v1::SecuredBag``; use :ndn-cxx:`SafeBag` instead.
 
 - Constant ``io::BASE_64``, use ``io::BASE64`` instead (:issue:`3741`)
 
diff --git a/docs/release-notes/release-notes-0.6.0.rst b/docs/release-notes/release-notes-0.6.0.rst
index 904eb1d..f5d7766 100644
--- a/docs/release-notes/release-notes-0.6.0.rst
+++ b/docs/release-notes/release-notes-0.6.0.rst
@@ -102,23 +102,23 @@
 
 - Old security framework.
 
-  * ``v1::KeyChain``, use :ndn-cxx:`v2::KeyChain` instead
+  * ``v1::KeyChain``; use :ndn-cxx:`KeyChain` instead.
 
   * ``v1::Validator`` interface and ``ValidatorRegex`` implementation of this
     interface. ``ValidatorConfig``, ``ValidatorNull`` implementation refactored to be based on
     the new validation framework.
 
   * ``v1::SecPublicInfo`` and its implementation (``SecPublicInfoSqlite``), ``SecTpm`` and its
-    implementations (``SecTpmFile``, ``SecTpmOsx``).  These classes are internal implementation
-    and not intended to be used without ``v1::KeyChain``.  :ndn-cxx:`v2::KeyChain` internally
+    implementations (``SecTpmFile``, ``SecTpmOsx``). These classes are internal implementation
+    and not intended to be used without ``v1::KeyChain``. The new :ndn-cxx:`KeyChain` internally
     uses the newly introduced :ndn-cxx:`Pib` and :ndn-cxx:`Tpm` interfaces with their
     corresponding implementations.
 
   * ``v1::Certificate``, ``v1::IdentityCertificate``, ``v1::CertificateExtension``,
-    ``v1::CertificateSubjectDescription``, use :ndn-cxx:`v2::Certificate` and
-    :ndn-cxx:`AdditionalDescription`
+    ``v1::CertificateSubjectDescription``; use the new :ndn-cxx:`Certificate` and
+    :ndn-cxx:`AdditionalDescription` instead.
 
-  * ``v1::SecuredBag``, use ``v2::SafeBag`` instead
+  * ``v1::SecuredBag``; use :ndn-cxx:`SafeBag` instead.
 
 - Constant ``io::BASE_64``, use ``io::BASE64`` instead (:issue:`3741`)