In common.h, remove Ptr.  In interest.h, etc. typedef InterestPtr and ConstInterestPtr, etc.

We will centralize and allow these to be typedef as boost::shared_ptr
or std::shared_ptr.
diff --git a/ndn-cpp/common.h b/ndn-cpp/common.h
index e45f067..30b705a 100644
--- a/ndn-cpp/common.h
+++ b/ndn-cpp/common.h
@@ -19,27 +19,6 @@
 
 namespace ndn
 {
-template<class T>
-struct Ptr : public boost::shared_ptr<T>
-{
-  Ptr () { }
-  Ptr (boost::shared_ptr<T> ptr) : boost::shared_ptr<T>(ptr) { }
-  Ptr (T *ptr) :  boost::shared_ptr<T>(ptr) { }
-
-  template<class Y>
-  Ptr & operator = (boost::shared_ptr<Y> ptr)
-  {
-    boost::static_pointer_cast<T> (ptr).swap (*this);
-    // *this = boost::static_pointer_cast<T> (ptr);
-    return *this;
-  }
-
-  operator Ptr<const T> () const { return *this; }
-
-  static Ptr
-  Create () { return boost::make_shared<T> (); }
-};
-
 typedef boost::posix_time::ptime Time;
 typedef boost::posix_time::time_duration TimeInterval;
 
@@ -97,6 +76,7 @@
 typedef std::vector<std::string>Comps;
 
 typedef boost::shared_ptr<Bytes> BytesPtr;
+typedef boost::shared_ptr<const Bytes> ConstBytesPtr;
 
 inline
 const unsigned char *