mgmt+core: Moving SegmentPublisher to core/ and removing KeyChain from nfd::AppFace

This change ensures interface uniformity between nfd::AppFace and
ndn::Face and allow now templated version of SegmentPublisher to be used
with either.

Change-Id: I82e29528b13b37bd2ae27ef47db30e8c87c15a38
Refs: #1749
diff --git a/daemon/main.cpp b/daemon/main.cpp
index 2509307..e275668 100644
--- a/daemon/main.cpp
+++ b/daemon/main.cpp
@@ -129,13 +129,21 @@
 
     m_fibManager = make_shared<FibManager>(ref(m_forwarder->getFib()),
                                            bind(&Forwarder::getFace, m_forwarder.get(), _1),
-                                           m_internalFace);
-    m_faceManager = make_shared<FaceManager>(ref(m_forwarder->getFaceTable()),
-                                             m_internalFace);
-    m_strategyChoiceManager = make_shared<StrategyChoiceManager>(
-                                ref(m_forwarder->getStrategyChoice()), m_internalFace);
+                                           m_internalFace,
+                                           ndn::ref(m_keyChain));
 
-    m_statusServer = make_shared<StatusServer>(m_internalFace, ref(*m_forwarder));
+    m_faceManager = make_shared<FaceManager>(ref(m_forwarder->getFaceTable()),
+                                             m_internalFace,
+                                             ndn::ref(m_keyChain));
+
+    m_strategyChoiceManager =
+      make_shared<StrategyChoiceManager>(ref(m_forwarder->getStrategyChoice()),
+                                         m_internalFace,
+                                         ndn::ref(m_keyChain));
+
+    m_statusServer = make_shared<StatusServer>(m_internalFace,
+                                               ref(*m_forwarder),
+                                               ndn::ref(m_keyChain));
 
     ConfigFile config((IgnoreRibAndLogSections()));
     general::setConfigFile(config);
@@ -314,6 +322,7 @@
 
   shared_ptr<std::ofstream>         m_logFile;
   std::basic_streambuf<char>*       m_originalStreamBuf;
+  ndn::KeyChain                     m_keyChain;
 };
 
 } // namespace nfd