Rename network directory to transport
diff --git a/Makefile.am b/Makefile.am
index 19e2ed8..a705703 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -30,7 +30,7 @@
   ndn-cpp/c/encoding/BinaryXMLName.c ndn-cpp/c/encoding/BinaryXMLName.h \
   ndn-cpp/c/encoding/BinaryXMLPublisherPublicKeyDigest.c ndn-cpp/c/encoding/BinaryXMLPublisherPublicKeyDigest.h \
   ndn-cpp/c/encoding/BinaryXMLStructureDecoder.c ndn-cpp/c/encoding/BinaryXMLStructureDecoder.h \
-  ndn-cpp/c/network/TcpTransport.c ndn-cpp/c/network/TcpTransport.c \
+  ndn-cpp/c/transport/TcpTransport.c ndn-cpp/c/transport/TcpTransport.c \
   ndn-cpp/c/util/DynamicUCharArray.c ndn-cpp/c/util/DynamicUCharArray.h \
   ndn-cpp/c/util/ndn_memory.c ndn-cpp/c/util/ndn_memory.h
 
@@ -45,7 +45,9 @@
   ndn-cpp/c/encoding/BinaryXMLEncoder.h ndn-cpp/encoding/BinaryXMLEncoder.hpp ndn-cpp/c/util/DynamicUCharArray.h \
   ndn-cpp/c/encoding/BinaryXMLStructureDecoder.h ndn-cpp/encoding/BinaryXMLStructureDecoder.hpp \
   ndn-cpp/encoding/BinaryXMLWireFormat.cpp ndn-cpp/c/encoding/BinaryXMLName.h ndn-cpp/encoding/BinaryXMLWireFormat.hpp \
-  ndn-cpp/encoding/WireFormat.cpp ndn-cpp/encoding/WireFormat.hpp
+  ndn-cpp/encoding/WireFormat.cpp ndn-cpp/encoding/WireFormat.hpp \
+  ndn-cpp/transport/TcpTransport2.cpp ndn-cpp/transport/TcpTransport.hpp \
+  ndn-cpp/transport/Transport.cpp ndn-cpp/transport/Transport.hpp
 
 bin_test_encode_decode_Interest_SOURCES = tests/test-encode-decode-Interest.cpp
 bin_test_encode_decode_Interest_LDADD = libndn-c.a libndn-cpp.a
diff --git a/Makefile.in b/Makefile.in
index 89789e7..2b37cda 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -145,8 +145,8 @@
 	ndn-cpp/c/encoding/BinaryXMLName.$(OBJEXT) \
 	ndn-cpp/c/encoding/BinaryXMLPublisherPublicKeyDigest.$(OBJEXT) \
 	ndn-cpp/c/encoding/BinaryXMLStructureDecoder.$(OBJEXT) \
-	ndn-cpp/c/network/TcpTransport.$(OBJEXT) \
-	ndn-cpp/c/network/TcpTransport.$(OBJEXT) \
+	ndn-cpp/c/transport/TcpTransport.$(OBJEXT) \
+	ndn-cpp/c/transport/TcpTransport.$(OBJEXT) \
 	ndn-cpp/c/util/DynamicUCharArray.$(OBJEXT) \
 	ndn-cpp/c/util/ndn_memory.$(OBJEXT)
 libndn_c_a_OBJECTS = $(am_libndn_c_a_OBJECTS)
@@ -156,7 +156,9 @@
 	ndn-cpp/Interest.$(OBJEXT) ndn-cpp/Key.$(OBJEXT) \
 	ndn-cpp/Name.$(OBJEXT) \
 	ndn-cpp/encoding/BinaryXMLWireFormat.$(OBJEXT) \
-	ndn-cpp/encoding/WireFormat.$(OBJEXT)
+	ndn-cpp/encoding/WireFormat.$(OBJEXT) \
+	ndn-cpp/transport/TcpTransport2.$(OBJEXT) \
+	ndn-cpp/transport/Transport.$(OBJEXT)
 libndn_cpp_a_OBJECTS = $(am_libndn_cpp_a_OBJECTS)
 PROGRAMS = $(bin_PROGRAMS)
 am_bin_test_encode_decode_ContentObject_OBJECTS =  \
@@ -427,7 +429,7 @@
   ndn-cpp/c/encoding/BinaryXMLName.c ndn-cpp/c/encoding/BinaryXMLName.h \
   ndn-cpp/c/encoding/BinaryXMLPublisherPublicKeyDigest.c ndn-cpp/c/encoding/BinaryXMLPublisherPublicKeyDigest.h \
   ndn-cpp/c/encoding/BinaryXMLStructureDecoder.c ndn-cpp/c/encoding/BinaryXMLStructureDecoder.h \
-  ndn-cpp/c/network/TcpTransport.c ndn-cpp/c/network/TcpTransport.c \
+  ndn-cpp/c/transport/TcpTransport.c ndn-cpp/c/transport/TcpTransport.c \
   ndn-cpp/c/util/DynamicUCharArray.c ndn-cpp/c/util/DynamicUCharArray.h \
   ndn-cpp/c/util/ndn_memory.c ndn-cpp/c/util/ndn_memory.h
 
@@ -442,7 +444,9 @@
   ndn-cpp/c/encoding/BinaryXMLEncoder.h ndn-cpp/encoding/BinaryXMLEncoder.hpp ndn-cpp/c/util/DynamicUCharArray.h \
   ndn-cpp/c/encoding/BinaryXMLStructureDecoder.h ndn-cpp/encoding/BinaryXMLStructureDecoder.hpp \
   ndn-cpp/encoding/BinaryXMLWireFormat.cpp ndn-cpp/c/encoding/BinaryXMLName.h ndn-cpp/encoding/BinaryXMLWireFormat.hpp \
-  ndn-cpp/encoding/WireFormat.cpp ndn-cpp/encoding/WireFormat.hpp
+  ndn-cpp/encoding/WireFormat.cpp ndn-cpp/encoding/WireFormat.hpp \
+  ndn-cpp/transport/TcpTransport2.cpp ndn-cpp/transport/TcpTransport.hpp \
+  ndn-cpp/transport/Transport.cpp ndn-cpp/transport/Transport.hpp
 
 bin_test_encode_decode_Interest_SOURCES = tests/test-encode-decode-Interest.cpp
 bin_test_encode_decode_Interest_LDADD = libndn-c.a libndn-cpp.a
@@ -575,15 +579,15 @@
 ndn-cpp/c/encoding/BinaryXMLStructureDecoder.$(OBJEXT):  \
 	ndn-cpp/c/encoding/$(am__dirstamp) \
 	ndn-cpp/c/encoding/$(DEPDIR)/$(am__dirstamp)
-ndn-cpp/c/network/$(am__dirstamp):
-	@$(MKDIR_P) ndn-cpp/c/network
-	@: > ndn-cpp/c/network/$(am__dirstamp)
-ndn-cpp/c/network/$(DEPDIR)/$(am__dirstamp):
-	@$(MKDIR_P) ndn-cpp/c/network/$(DEPDIR)
-	@: > ndn-cpp/c/network/$(DEPDIR)/$(am__dirstamp)
-ndn-cpp/c/network/TcpTransport.$(OBJEXT):  \
-	ndn-cpp/c/network/$(am__dirstamp) \
-	ndn-cpp/c/network/$(DEPDIR)/$(am__dirstamp)
+ndn-cpp/c/transport/$(am__dirstamp):
+	@$(MKDIR_P) ndn-cpp/c/transport
+	@: > ndn-cpp/c/transport/$(am__dirstamp)
+ndn-cpp/c/transport/$(DEPDIR)/$(am__dirstamp):
+	@$(MKDIR_P) ndn-cpp/c/transport/$(DEPDIR)
+	@: > ndn-cpp/c/transport/$(DEPDIR)/$(am__dirstamp)
+ndn-cpp/c/transport/TcpTransport.$(OBJEXT):  \
+	ndn-cpp/c/transport/$(am__dirstamp) \
+	ndn-cpp/c/transport/$(DEPDIR)/$(am__dirstamp)
 ndn-cpp/c/util/$(am__dirstamp):
 	@$(MKDIR_P) ndn-cpp/c/util
 	@: > ndn-cpp/c/util/$(am__dirstamp)
@@ -626,6 +630,18 @@
 ndn-cpp/encoding/WireFormat.$(OBJEXT):  \
 	ndn-cpp/encoding/$(am__dirstamp) \
 	ndn-cpp/encoding/$(DEPDIR)/$(am__dirstamp)
+ndn-cpp/transport/$(am__dirstamp):
+	@$(MKDIR_P) ndn-cpp/transport
+	@: > ndn-cpp/transport/$(am__dirstamp)
+ndn-cpp/transport/$(DEPDIR)/$(am__dirstamp):
+	@$(MKDIR_P) ndn-cpp/transport/$(DEPDIR)
+	@: > ndn-cpp/transport/$(DEPDIR)/$(am__dirstamp)
+ndn-cpp/transport/TcpTransport2.$(OBJEXT):  \
+	ndn-cpp/transport/$(am__dirstamp) \
+	ndn-cpp/transport/$(DEPDIR)/$(am__dirstamp)
+ndn-cpp/transport/Transport.$(OBJEXT):  \
+	ndn-cpp/transport/$(am__dirstamp) \
+	ndn-cpp/transport/$(DEPDIR)/$(am__dirstamp)
 
 libndn-cpp.a: $(libndn_cpp_a_OBJECTS) $(libndn_cpp_a_DEPENDENCIES) $(EXTRA_libndn_cpp_a_DEPENDENCIES) 
 	$(AM_V_at)-rm -f libndn-cpp.a
@@ -706,9 +722,10 @@
 	-rm -f ndn-cpp/*.$(OBJEXT)
 	-rm -f ndn-cpp/c/*.$(OBJEXT)
 	-rm -f ndn-cpp/c/encoding/*.$(OBJEXT)
-	-rm -f ndn-cpp/c/network/*.$(OBJEXT)
+	-rm -f ndn-cpp/c/transport/*.$(OBJEXT)
 	-rm -f ndn-cpp/c/util/*.$(OBJEXT)
 	-rm -f ndn-cpp/encoding/*.$(OBJEXT)
+	-rm -f ndn-cpp/transport/*.$(OBJEXT)
 	-rm -f tests/*.$(OBJEXT)
 
 distclean-compile:
@@ -727,11 +744,13 @@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/c/encoding/$(DEPDIR)/BinaryXMLName.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/c/encoding/$(DEPDIR)/BinaryXMLPublisherPublicKeyDigest.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/c/encoding/$(DEPDIR)/BinaryXMLStructureDecoder.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/c/network/$(DEPDIR)/TcpTransport.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/c/transport/$(DEPDIR)/TcpTransport.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/c/util/$(DEPDIR)/DynamicUCharArray.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/c/util/$(DEPDIR)/ndn_memory.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/encoding/$(DEPDIR)/BinaryXMLWireFormat.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/encoding/$(DEPDIR)/WireFormat.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/transport/$(DEPDIR)/TcpTransport2.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/transport/$(DEPDIR)/Transport.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/test-encode-decode-ContentObject.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/test-encode-decode-Interest.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/test-get-async.Po@am__quote@
@@ -1023,12 +1042,14 @@
 	-rm -f ndn-cpp/c/$(am__dirstamp)
 	-rm -f ndn-cpp/c/encoding/$(DEPDIR)/$(am__dirstamp)
 	-rm -f ndn-cpp/c/encoding/$(am__dirstamp)
-	-rm -f ndn-cpp/c/network/$(DEPDIR)/$(am__dirstamp)
-	-rm -f ndn-cpp/c/network/$(am__dirstamp)
+	-rm -f ndn-cpp/c/transport/$(DEPDIR)/$(am__dirstamp)
+	-rm -f ndn-cpp/c/transport/$(am__dirstamp)
 	-rm -f ndn-cpp/c/util/$(DEPDIR)/$(am__dirstamp)
 	-rm -f ndn-cpp/c/util/$(am__dirstamp)
 	-rm -f ndn-cpp/encoding/$(DEPDIR)/$(am__dirstamp)
 	-rm -f ndn-cpp/encoding/$(am__dirstamp)
+	-rm -f ndn-cpp/transport/$(DEPDIR)/$(am__dirstamp)
+	-rm -f ndn-cpp/transport/$(am__dirstamp)
 	-rm -f tests/$(DEPDIR)/$(am__dirstamp)
 	-rm -f tests/$(am__dirstamp)
 
@@ -1042,7 +1063,7 @@
 
 distclean: distclean-am
 	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-	-rm -rf ndn-cpp/$(DEPDIR) ndn-cpp/c/$(DEPDIR) ndn-cpp/c/encoding/$(DEPDIR) ndn-cpp/c/network/$(DEPDIR) ndn-cpp/c/util/$(DEPDIR) ndn-cpp/encoding/$(DEPDIR) tests/$(DEPDIR)
+	-rm -rf ndn-cpp/$(DEPDIR) ndn-cpp/c/$(DEPDIR) ndn-cpp/c/encoding/$(DEPDIR) ndn-cpp/c/transport/$(DEPDIR) ndn-cpp/c/util/$(DEPDIR) ndn-cpp/encoding/$(DEPDIR) ndn-cpp/transport/$(DEPDIR) tests/$(DEPDIR)
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-hdr distclean-tags
@@ -1090,7 +1111,7 @@
 maintainer-clean: maintainer-clean-am
 	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
 	-rm -rf $(top_srcdir)/autom4te.cache
-	-rm -rf ndn-cpp/$(DEPDIR) ndn-cpp/c/$(DEPDIR) ndn-cpp/c/encoding/$(DEPDIR) ndn-cpp/c/network/$(DEPDIR) ndn-cpp/c/util/$(DEPDIR) ndn-cpp/encoding/$(DEPDIR) tests/$(DEPDIR)
+	-rm -rf ndn-cpp/$(DEPDIR) ndn-cpp/c/$(DEPDIR) ndn-cpp/c/encoding/$(DEPDIR) ndn-cpp/c/transport/$(DEPDIR) ndn-cpp/c/util/$(DEPDIR) ndn-cpp/encoding/$(DEPDIR) ndn-cpp/transport/$(DEPDIR) tests/$(DEPDIR)
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
diff --git a/ndn-cpp/c/network/TcpTransport.c b/ndn-cpp/c/transport/TcpTransport.c
similarity index 100%
rename from ndn-cpp/c/network/TcpTransport.c
rename to ndn-cpp/c/transport/TcpTransport.c
diff --git a/ndn-cpp/c/network/TcpTransport.h b/ndn-cpp/c/transport/TcpTransport.h
similarity index 100%
rename from ndn-cpp/c/network/TcpTransport.h
rename to ndn-cpp/c/transport/TcpTransport.h
diff --git a/tests/test-get-async.cpp b/tests/test-get-async.cpp
index d34ef2a..3ea187e 100644
--- a/tests/test-get-async.cpp
+++ b/tests/test-get-async.cpp
@@ -9,7 +9,7 @@
 #include <ndn-cpp/Interest.hpp>
 #include <ndn-cpp/ContentObject.hpp>
 #include <ndn-cpp/encoding/BinaryXMLStructureDecoder.hpp>
-#include <ndn-cpp/c/network/TcpTransport.h>
+#include <ndn-cpp/transport/TcpTransport.hpp>
 
 using namespace std;
 using namespace ndn;
@@ -21,23 +21,18 @@
     vector<unsigned char> encoding;
     interest.encode(encoding);
 
-    struct ndn_TcpTransport transport;
-    ndn_TcpTransport_init(&transport);
-    ndn_Error error;
-    if (error = ndn_TcpTransport_connect(&transport, (char *)"E.hub.ndn.ucla.edu", 9695))
-      return error;
-    if (error = ndn_TcpTransport_send(&transport, &encoding[0], encoding.size()))
-      return error;
+    TcpTransport transport;
+    transport.connect((char *)"E.hub.ndn.ucla.edu", 9695);
+    transport.send(&encoding[0], encoding.size());
 
     BinaryXMLStructureDecoder structureDecoder;
     vector<unsigned char> element;
-    unsigned char buffer[8000];
-    unsigned int nBytes;
     while (true) {
       while (true) {
-        if (error = ndn_TcpTransport_receive(&transport, buffer, sizeof(buffer), &nBytes))
-          return error;
+        unsigned char buffer[8000];
+        unsigned int nBytes = transport.receive(buffer, sizeof(buffer));
         element.insert(element.end(), buffer, buffer + nBytes);
+
         if (structureDecoder.findElementEnd(&element[0], element.size()))
           break;
       }