Now everything compiles, but not everything is working yet
diff --git a/examples/ccnx-simple-with-pcap.cc b/examples/ccnx-simple-with-pcap.cc
index b97565b..ea2f318 100644
--- a/examples/ccnx-simple-with-pcap.cc
+++ b/examples/ccnx-simple-with-pcap.cc
@@ -37,7 +37,7 @@
   Config::SetDefault ("ns3::PointToPointChannel::Delay", StringValue ("10ms"));
   Config::SetDefault ("ns3::DropTailQueue::MaxPackets", StringValue ("20"));
 
-  Config::SetDefault ("ns3::NdnProducer::SignatureBits", StringValue ("1"));
+  Config::SetDefault ("ns3::ndn::Producer::SignatureBits", StringValue ("1"));
   
   // Creating nodes
   NodeContainer nodes;
@@ -48,29 +48,29 @@
   p2p.Install (nodes.Get (0), nodes.Get (1));
   p2p.Install (nodes.Get (1), nodes.Get (2));
 
-  // Install Ndn stack on all nodes
-  NdnStackHelper ndnHelper;
+  // Install NDN stack on all nodes
+  ndn::StackHelper ndnHelper;
   ndnHelper.SetDefaultRoutes (true);
   ndnHelper.InstallAll ();
 
   // Installing applications
 
   // Consumer
-  NdnAppHelper consumerHelper ("ns3::NdnConsumerCbr");
+  ndn::AppHelper consumerHelper ("ns3::ndn::ConsumerCbr");
   // Consumer will request /prefix/0, /prefix/1, ...
   consumerHelper.SetPrefix ("/prefix");
   consumerHelper.SetAttribute ("Frequency", StringValue ("10")); // 10 interests a second
   consumerHelper.Install (nodes.Get (0)); // first node
 
   // Producer
-  NdnAppHelper producerHelper ("ns3::NdnProducer");
+  ndn::AppHelper producerHelper ("ns3::ndn::Producer");
   // Producer will reply to all requests starting with /prefix
   producerHelper.SetPrefix ("/prefix");
   producerHelper.SetAttribute ("PayloadSize", StringValue("1024"));
   producerHelper.Install (nodes.Get (2)); // last node
 
   PcapWriter trace ("ndn-simple-trace.pcap");
-  Config::ConnectWithoutContext ("/NodeList/*/$ns3::NdnL3Protocol/FaceList/*/NdnTx",
+  Config::ConnectWithoutContext ("/NodeList/*/$ns3::ndn::L3Protocol/FaceList/*/NdnTx",
 				 MakeCallback (&PcapWriter::TracePacket, &trace));
   
   Simulator::Stop (Seconds (20.0));
diff --git a/examples/ndn-grid.cc b/examples/ndn-grid.cc
index ace79df..a37d245 100644
--- a/examples/ndn-grid.cc
+++ b/examples/ndn-grid.cc
@@ -78,17 +78,13 @@
   PointToPointGridHelper grid (nGrid, nGrid, p2p);
   grid.BoundingBox(100,100,200,200);
 
-  // Install Ndn stack on all nodes
+  // Install NDN stack on all nodes
   NS_LOG_INFO ("Installing Ndn stack on all nodes");
-  NdnStackHelper ndnHelper;
-  ndnHelper.SetContentStore ("ns3::NdnContentStoreLru",
-                              "Size", "10");
-  // ndnHelper.SetContentStore ("ns3::NdnContentStoreRandom",
-  //                             "Size", "10");
-  // ndnHelper.SetForwardingStrategy ("ns3::ndnSIM::BestRoute");
+  ndn::StackHelper ndnHelper;
+  ndnHelper.SetContentStore ("ns3::ndn::cs::Lru", "Size", "10");
   ndnHelper.InstallAll ();
 
-  NdnGlobalRoutingHelper ndnGlobalRoutingHelper;
+  ndn::GlobalRoutingHelper ndnGlobalRoutingHelper;
   ndnGlobalRoutingHelper.InstallAll ();
   
   // Getting containers for the consumer/producer
@@ -100,17 +96,17 @@
   NS_LOG_INFO ("Installing Applications");
   std::string prefix = "/prefix";
   
-  NdnAppHelper consumerHelper ("ns3::NdnConsumerCbr");
+  ndn::AppHelper consumerHelper ("ns3::ndn::ConsumerCbr");
   consumerHelper.SetPrefix (prefix);
   consumerHelper.SetAttribute ("Frequency", StringValue ("100")); // 10 interests a second
   ApplicationContainer consumers = consumerHelper.Install (consumerNodes);
   
-  NdnAppHelper producerHelper ("ns3::NdnProducer");
+  ndn::AppHelper producerHelper ("ns3::ndn::Producer");
   producerHelper.SetPrefix (prefix);
   producerHelper.SetAttribute ("PayloadSize", StringValue("1024"));
   ApplicationContainer producers = producerHelper.Install (producer);
 
-  // Add /prefix origins to NdnGlobalRouter
+  // Add /prefix origins to ndn::GlobalRouter
   ndnGlobalRoutingHelper.AddOrigins (prefix, producer);
 
   // Calculate and install FIBs
@@ -126,7 +122,7 @@
        node ++)
     {
       std::cout << "Node #" << (*node)->GetId () << std::endl;
-      (*node)->GetObject<NdnContentStore> ()->Print (std::cout);
+      (*node)->GetObject<ndn::ContentStore> ()->Print (std::cout);
       std::cout << std::endl;
     }
   
diff --git a/examples/ndn-simple.cc b/examples/ndn-simple.cc
index 5a3b6bf..eaa9d09 100644
--- a/examples/ndn-simple.cc
+++ b/examples/ndn-simple.cc
@@ -44,7 +44,7 @@
  *
  * To run scenario and see what is happening, use the following command:
  *
- *     NS_LOG=NdnSimple:NdnConsumer ./waf --run=ndn-simple
+ *     NS_LOG=ndn.Simple:ndn.Consumer ./waf --run=ndn-simple
  */
 
 NS_LOG_COMPONENT_DEFINE ("ndn.Simple");
@@ -73,12 +73,12 @@
 
   // Install Ndn stack on all nodes
   NS_LOG_INFO ("Installing Ndn stack");
-  NdnStackHelper ndnHelper;
+  ndn::StackHelper ndnHelper;
   ndnHelper.SetDefaultRoutes (true);
   ndnHelper.InstallAll ();
 
   NS_LOG_INFO ("Installing Ndn applications");
-  NdnAppHelper consumerHelper ("ns3::NdnConsumerCbr");
+  ndn::AppHelper consumerHelper ("ns3::ndn::ConsumerCbr");
   // Consumer will request /prefix/0, /prefix/1, ...
   consumerHelper.SetPrefix ("/prefix/0");
   consumerHelper.SetAttribute ("Frequency", StringValue ("1")); // 10 interests a second
@@ -90,7 +90,7 @@
   consumers.Start (Seconds (1));
   consumers.Stop  (Seconds (1.3));
   
-  NdnAppHelper producerHelper ("ns3::NdnProducer");
+  ndn::AppHelper producerHelper ("ns3::ndn::Producer");
   // Producer will reply to all requests starting with /prefix
   producerHelper.SetPrefix ("/prefix");
   producerHelper.SetAttribute ("PayloadSize", StringValue("1024"));
diff --git a/examples/trie.cc b/examples/trie.cc
index 2523857..9000f38 100644
--- a/examples/trie.cc
+++ b/examples/trie.cc
@@ -30,7 +30,7 @@
 
 using namespace std;
 using namespace ns3;
-using namespace ndnSIM;
+using namespace ndn::ndnSIM;
 using namespace boost;
 
 NS_LOG_COMPONENT_DEFINE ("ndn.Trie");