DER encoding: Implement DerNode and subclasses.
diff --git a/Makefile.in b/Makefile.in
index 2d5d108..eca3905 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -182,6 +182,8 @@
 	ndn-cpp/encoding/binary-xml-wire-format.lo \
 	ndn-cpp/encoding/element-listener.lo ndn-cpp/encoding/oid.lo \
 	ndn-cpp/encoding/wire-format.lo \
+	ndn-cpp/encoding/der/der-exception.lo \
+	ndn-cpp/encoding/der/der.lo \
 	ndn-cpp/encoding/der/visitor/no-arguments-visitor.lo \
 	ndn-cpp/encoding/der/visitor/simple-visitor.lo \
 	ndn-cpp/encoding/der/visitor/void-visitor.lo \
@@ -660,7 +662,8 @@
   ndn-cpp/encoding/element-listener.cpp \
   ndn-cpp/encoding/oid.cpp \
   ndn-cpp/encoding/wire-format.cpp \
-  ndn-cpp/encoding/der/der.hpp \
+  ndn-cpp/encoding/der/der-exception.cpp ndn-cpp/encoding/der/der-exception.hpp \
+  ndn-cpp/encoding/der/der.cpp ndn-cpp/encoding/der/der.hpp \
   ndn-cpp/encoding/der/visitor/no-arguments-visitor.cpp ndn-cpp/encoding/der/visitor/no-arguments-visitor.hpp \
   ndn-cpp/encoding/der/visitor/simple-visitor.cpp ndn-cpp/encoding/der/visitor/simple-visitor.hpp \
   ndn-cpp/encoding/der/visitor/visitor.hpp \
@@ -889,6 +892,17 @@
 	ndn-cpp/encoding/$(DEPDIR)/$(am__dirstamp)
 ndn-cpp/encoding/wire-format.lo: ndn-cpp/encoding/$(am__dirstamp) \
 	ndn-cpp/encoding/$(DEPDIR)/$(am__dirstamp)
+ndn-cpp/encoding/der/$(am__dirstamp):
+	@$(MKDIR_P) ndn-cpp/encoding/der
+	@: > ndn-cpp/encoding/der/$(am__dirstamp)
+ndn-cpp/encoding/der/$(DEPDIR)/$(am__dirstamp):
+	@$(MKDIR_P) ndn-cpp/encoding/der/$(DEPDIR)
+	@: > ndn-cpp/encoding/der/$(DEPDIR)/$(am__dirstamp)
+ndn-cpp/encoding/der/der-exception.lo:  \
+	ndn-cpp/encoding/der/$(am__dirstamp) \
+	ndn-cpp/encoding/der/$(DEPDIR)/$(am__dirstamp)
+ndn-cpp/encoding/der/der.lo: ndn-cpp/encoding/der/$(am__dirstamp) \
+	ndn-cpp/encoding/der/$(DEPDIR)/$(am__dirstamp)
 ndn-cpp/encoding/der/visitor/$(am__dirstamp):
 	@$(MKDIR_P) ndn-cpp/encoding/der/visitor
 	@: > ndn-cpp/encoding/der/visitor/$(am__dirstamp)
@@ -1055,6 +1069,8 @@
 	-rm -f ndn-cpp/c/util/*.lo
 	-rm -f ndn-cpp/encoding/*.$(OBJEXT)
 	-rm -f ndn-cpp/encoding/*.lo
+	-rm -f ndn-cpp/encoding/der/*.$(OBJEXT)
+	-rm -f ndn-cpp/encoding/der/*.lo
 	-rm -f ndn-cpp/encoding/der/visitor/*.$(OBJEXT)
 	-rm -f ndn-cpp/encoding/der/visitor/*.lo
 	-rm -f ndn-cpp/security/*.$(OBJEXT)
@@ -1107,6 +1123,8 @@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/encoding/$(DEPDIR)/element-listener.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/encoding/$(DEPDIR)/oid.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/encoding/$(DEPDIR)/wire-format.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/encoding/der/$(DEPDIR)/der-exception.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/encoding/der/$(DEPDIR)/der.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/encoding/der/visitor/$(DEPDIR)/no-arguments-visitor.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/encoding/der/visitor/$(DEPDIR)/simple-visitor.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@ndn-cpp/encoding/der/visitor/$(DEPDIR)/void-visitor.Plo@am__quote@
@@ -1195,6 +1213,7 @@
 	-rm -rf ndn-cpp/c/transport/.libs ndn-cpp/c/transport/_libs
 	-rm -rf ndn-cpp/c/util/.libs ndn-cpp/c/util/_libs
 	-rm -rf ndn-cpp/encoding/.libs ndn-cpp/encoding/_libs
+	-rm -rf ndn-cpp/encoding/der/.libs ndn-cpp/encoding/der/_libs
 	-rm -rf ndn-cpp/encoding/der/visitor/.libs ndn-cpp/encoding/der/visitor/_libs
 	-rm -rf ndn-cpp/security/.libs ndn-cpp/security/_libs
 	-rm -rf ndn-cpp/security/certificate/.libs ndn-cpp/security/certificate/_libs
@@ -1546,6 +1565,8 @@
 	-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/encoding/der/$(DEPDIR)/$(am__dirstamp)
+	-rm -f ndn-cpp/encoding/der/$(am__dirstamp)
 	-rm -f ndn-cpp/encoding/der/visitor/$(DEPDIR)/$(am__dirstamp)
 	-rm -f ndn-cpp/encoding/der/visitor/$(am__dirstamp)
 	-rm -f ndn-cpp/security/$(DEPDIR)/$(am__dirstamp)
@@ -1573,7 +1594,7 @@
 
 distclean: distclean-recursive
 	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-	-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/encoding/der/visitor/$(DEPDIR) ndn-cpp/security/$(DEPDIR) ndn-cpp/security/certificate/$(DEPDIR) ndn-cpp/security/identity/$(DEPDIR) ndn-cpp/security/policy/$(DEPDIR) ndn-cpp/transport/$(DEPDIR) ndn-cpp/util/$(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/encoding/der/$(DEPDIR) ndn-cpp/encoding/der/visitor/$(DEPDIR) ndn-cpp/security/$(DEPDIR) ndn-cpp/security/certificate/$(DEPDIR) ndn-cpp/security/identity/$(DEPDIR) ndn-cpp/security/policy/$(DEPDIR) ndn-cpp/transport/$(DEPDIR) ndn-cpp/util/$(DEPDIR) tests/$(DEPDIR)
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-libtool distclean-tags
@@ -1621,7 +1642,7 @@
 maintainer-clean: maintainer-clean-recursive
 	-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/transport/$(DEPDIR) ndn-cpp/c/util/$(DEPDIR) ndn-cpp/encoding/$(DEPDIR) ndn-cpp/encoding/der/visitor/$(DEPDIR) ndn-cpp/security/$(DEPDIR) ndn-cpp/security/certificate/$(DEPDIR) ndn-cpp/security/identity/$(DEPDIR) ndn-cpp/security/policy/$(DEPDIR) ndn-cpp/transport/$(DEPDIR) ndn-cpp/util/$(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/encoding/der/$(DEPDIR) ndn-cpp/encoding/der/visitor/$(DEPDIR) ndn-cpp/security/$(DEPDIR) ndn-cpp/security/certificate/$(DEPDIR) ndn-cpp/security/identity/$(DEPDIR) ndn-cpp/security/policy/$(DEPDIR) ndn-cpp/transport/$(DEPDIR) ndn-cpp/util/$(DEPDIR) tests/$(DEPDIR)
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic