Small source movements (ccn_* to ccn/). Small change of NameBuilder implementation

diff --git a/model/ndn_namebuilder.cc b/model/ndn_namebuilder.cc
index df22e62..8f65647 100644
--- a/model/ndn_namebuilder.cc
+++ b/model/ndn_namebuilder.cc
@@ -19,28 +19,43 @@
  */
 
 #include "ndn_namebuilder.h"
+#include <ccn/ccn.h>
 
-namespace ns3 
+using namespace std;
+
+namespace ns3 {
+namespace NDNabstraction {
+
+NameBuilder::NameBuilder ()
 {
-namespace NDNabstraction
+  m_value = ccn_charbuf_create ();
+  ccn_name_init(m_value);
+}
+
+NameBuilder::NameBuilder (const string &s)
 {
-    NameBuilder::NameBuilder()
-    {
-        m_value = ccn_charbuf_create();
-        ccn_name_init(m_value);
-    }
-    
-    ccn_charbuf*
-    NameBuilder::GetName()
-    {
-        return m_value;
-    }
-    
-    void
-    NameBuilder::AddComponent(string s)
-    {
-        
-        ccn_name_append_str(m_value,s.c_str());
-    }
+  m_value = ccn_charbuf_create ();
+  ccn_name_init(m_value);
+  (*this) (s);
+}
+
+NameBuilder::~NameBuilder ()
+{
+  ccn_charbuf_destroy(&m_value);
+}
+
+const ccn_charbuf*
+NameBuilder::GetName () const
+{
+  return m_value;
+}
+
+NameBuilder&
+NameBuilder::operator () (const string &s)
+{
+  ccn_name_append_str (m_value,s.c_str());
+  return *this;
+}
+
 }
 }