ndnSIM-v2: Initial implementation

- Name, name::Components, Interest, Data now use ndn-cxx
- Ptr is replaced with shared_ptr for ndn-cxx structures

Credits for the change also to Mickey Sweat, Wentao Shang, and Alex Afanasyev
diff --git a/model/ndn-app-face.hpp b/model/ndn-app-face.hpp
index 6d8be19..3e06597 100644
--- a/model/ndn-app-face.hpp
+++ b/model/ndn-app-face.hpp
@@ -22,6 +22,8 @@
 #ifndef NDN_APP_FACE_H
 #define NDN_APP_FACE_H
 
+#include "ns3/ndnSIM/model/ndn-common.hpp"
+
 #include "ndn-face.hpp"
 #include "ns3/traced-callback.h"
 
@@ -31,12 +33,6 @@
 
 namespace ndn {
 
-class Interest;
-class Data;
-
-typedef Interest InterestHeader;
-typedef Data DataHeader;
-
 class App;
 
 /**
@@ -63,10 +59,10 @@
   ////////////////////////////////////////////////////////////////////
   // methods overloaded from Face
   virtual bool
-  SendInterest(Ptr<const Interest> interest);
+  SendInterest(shared_ptr<const Interest> interest);
 
   virtual bool
-  SendData(Ptr<const Data> data);
+  SendData(shared_ptr<const Data> data);
 
 public:
   virtual std::ostream&
@@ -76,6 +72,7 @@
 private:
   AppFace();
   AppFace(const AppFace&); ///< \brief Disabled copy constructor
+
   AppFace&
   operator=(const AppFace&); ///< \brief Disabled copy operator