model+helper+examples: Enable configurability of NFD parameters using StackHelper

Refs: #2353, #2220
diff --git a/model/ndn-l3-protocol.hpp b/model/ndn-l3-protocol.hpp
index 13f6106..11de1b8 100644
--- a/model/ndn-l3-protocol.hpp
+++ b/model/ndn-l3-protocol.hpp
@@ -31,10 +31,13 @@
 #include "ns3/nstime.h"
 #include "ns3/traced-callback.h"
 
+#include <boost/property_tree/ptree_fwd.hpp>
+
 namespace nfd {
 class Forwarder;
 class FibManager;
 class StrategyChoiceManager;
+typedef boost::property_tree::ptree ConfigSection;
 } // namespace nfd
 
 namespace ns3 {
@@ -90,7 +93,7 @@
    * \brief Initialize NFD instance
    */
   void
-  initialize(bool shouldUseNfdCs);
+  initialize();
 
   /**
    * \brief Get smart pointer to nfd::Forwarder installed on the node
@@ -142,6 +145,12 @@
   shared_ptr<Face>
   getFaceByNetDevice(Ptr<NetDevice> netDevice) const;
 
+  /**
+   * \brief Get NFD config (boost::property_tree)
+   */
+  nfd::ConfigSection&
+  getConfig();
+
 protected:
   virtual void
   DoDispose(void); ///< @brief Do cleanup
@@ -157,7 +166,7 @@
 
 private:
   void
-  initializeManagement(bool isNfd);
+  initializeManagement();
 
 private:
   class Impl;