Updating the build framework
diff --git a/src/ndns-tlv.h b/src/ndns-tlv.h
deleted file mode 100644
index d8535a5..0000000
--- a/src/ndns-tlv.h
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-namespace ndn {
-namespace tlv {
-namespace ndns {
-	enum {
-		Type = 2000,
-		Fressness = 2001,
-		ContentBlob = 2002,
-		NumberOfRRData = 2003,
-		RRData = 2004
-	};//enum
-}//namespace ndns
-}//namespace tlv
-}//namespace ndn
diff --git a/src/ndns-tlv.hpp b/src/ndns-tlv.hpp
new file mode 100644
index 0000000..5343a96
--- /dev/null
+++ b/src/ndns-tlv.hpp
@@ -0,0 +1,34 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014, Regents of the University of California.
+ *
+ * This file is part of NDNS (Named Data Networking Domain Name Service).
+ * See AUTHORS.md for complete list of NDNS authors and contributors.
+ *
+ * NDNS is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+namespace ndn {
+namespace ndns {
+namespace tlv {
+
+enum {
+  Type = 2000,
+  Fressness = 2001,
+  ContentBlob = 2002,
+  NumberOfRRData = 2003,
+  RRData = 2004
+};
+
+} // namespace tlv
+} // namespace ndns
+} // namespace ndn
diff --git a/src/query.cpp b/src/query.cpp
index 861d1c8..756de40 100644
--- a/src/query.cpp
+++ b/src/query.cpp
@@ -1,53 +1,63 @@
-/*
- * query.cpp
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014, Regents of the University of California.
  *
- *  Created on: 18 Jul, 2014
- *      Author: shock
+ * This file is part of NDNS (Named Data Networking Domain Name Service).
+ * See AUTHORS.md for complete list of NDNS authors and contributors.
+ *
+ * NDNS is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "query.h"
+#include "query.hpp"
 
 namespace ndn {
+namespace ndns {
 
 Query::Query()
-: m_interestLifetime(time::milliseconds(4000))
+  : m_interestLifetime(time::milliseconds(4000))
 {
-	// TODO Auto-generated constructor stub
-
 }
 
 Query::~Query() {
-	// TODO Auto-generated destructor stub
 }
 
 
 void
 Query::fromWire(const Name &name, const Interest &interest)
 {
-    Name interestName;
-    interestName = interest.getName();
+  Name interestName;
+  interestName = interest.getName();
 
-    int qtflag = -1;
-    size_t len = interestName.size();
-    for (size_t i=0; i<len; i++)
+  int qtflag = -1;
+  size_t len = interestName.size();
+  for (size_t i=0; i<len; i++)
     {
-    	string comp = interestName.get(i).toEscapedString();
-    	if (comp == ndn::toString(QueryType::DNS) || comp == ndn::toString(QueryType::DNS_R))
-    	{
-    		qtflag = i;
-    		break;
-    	}
+      std::string comp = interestName.get(i).toUri();
+      if (comp == toString(QUERY_DNS) || comp == toString(QUERY_DNS_R))
+        {
+          qtflag = i;
+          break;
+        }
     }//for
 
-    if (qtflag == -1)
+  if (qtflag == -1)
     {
-    	cerr<<"There is no QueryType in the Interest Name: "<<interestName<<endl;
-    	return;
+      std::cerr << "There is no QueryType in the Interest Name: " << interestName << std::endl;
+      return;
     }
-    this->m_queryType = ndn::toQueryType(interestName.get(qtflag).toEscapedString());
-    this->m_rrType = ndn::toRRType(interestName.get(len-1).toEscapedString());
-    this->m_authorityZone = interestName.getPrefix(qtflag); //the DNS/DNS-R is not included
-    this->m_interestLifetime = interest.getInterestLifetime();
+  this->m_queryType = toQueryType(interestName.get(qtflag).toUri());
+  this->m_rrType = toRRType(interestName.get(len-1).toUri());
+  this->m_authorityZone = interestName.getPrefix(qtflag); //the DNS/DNS-R is not included
+  this->m_interestLifetime = interest.getInterestLifetime();
 
 }
 
@@ -55,8 +65,8 @@
 size_t
 Query::wireEncode(EncodingImpl<T>& block) const
 {
-	size_t totalLength = 0;
-	totalLength += 0;
+  size_t totalLength = 0;
+  totalLength += 0;
 
 
   size_t totalLength = prependByteArrayBlock(block, tlv::Bytes,
@@ -71,15 +81,16 @@
 Interest
 Query::toWire() const
 {
-	Name name = this->m_authorityZone;
-	name.append(ndn::toString(this->m_queryType));
-	name.append(this->m_rrLabel);
-	name.append(ndn::toString(this->m_rrType));
-	Selectors selector;
-	//selector.setMustBeFresh(true);
+  Name name = this->m_authorityZone;
+  name.append(toString(this->m_queryType));
+  name.append(this->m_rrLabel);
+  name.append(toString(this->m_rrType));
+  Selectors selector;
+  //selector.setMustBeFresh(true);
 
-	Interest interest = Interest(name, selector, -1, this->m_interestLifetime);
-	return interest;
+  Interest interest = Interest(name, selector, -1, this->m_interestLifetime);
+  return interest;
 }
 
-} /* namespace ndn */
+} // namespace ndns
+} // namespace ndn
diff --git a/src/query.h b/src/query.h
deleted file mode 100644
index 001efa0..0000000
--- a/src/query.h
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * query.h
- *
- *  Created on: 18 Jul, 2014
- *      Author: shock
- */
-
-#ifndef QUERY_H_
-#define QUERY_H_
-
-#include <ndn-cxx/name.hpp>
-#include <rr.h>
-
-using namespace std;
-
-namespace ndn {
-
-
-enum class QueryType
-{
-	DNS,
-	DNS_R,
-};
-
-static const string
-toString(QueryType qType) const
-{
-	string label;
-	switch (qType)
-	{
-		case QueryType::DNS:
-			label = "DNS";
-			break;
-		case QueryType::DNS_R:
-			label = "DNS-R";
-			break;
-		default:
-			label = "Default";
-			break;
-	}
-	return label;
-
-}
-
-static const QueryType
-toQueryType(string str)
-{
-	QueryType atype;
-	switch (str)
-	{
-		case "DNS":
-			atype = QueryType::DNS;
-			break;
-		case "DNS-R":
-			atype = QueryType::DNS_R;
-			break;
-		defalut:
-			atype = QueryType::DNS;
-			break;
-	}
-	return atype;
-}
-
-
-
-
-class Query {
-public:
-	Query();
-
-	virtual ~Query();
-
-
-
-	const Name& getAuthorityZone() const {
-		return m_authorityZone;
-	}
-
-	void setAuthorityZone(const Name& authorityZone) {
-		m_authorityZone = authorityZone;
-	}
-
-	time::milliseconds getInterestLifetime() const {
-		return m_interestLifetime;
-	}
-
-	void setInterestLifetime(time::milliseconds interestLifetime) {
-		m_interestLifetime = interestLifetime;
-	}
-
-	enum QueryType getQueryType() const {
-		return m_queryType;
-	}
-
-	void setQueryType(enum QueryType queryType) {
-		m_queryType = queryType;
-	}
-
-	const Name& getRrLabel() const {
-		return m_rrLabel;
-	}
-
-	void setRrLabel(const Name& rrLabel) {
-		m_rrLabel = rrLabel;
-	}
-
-	const RRType& getRrType() const {
-		return m_rrType;
-	}
-
-	void setRrType(const RRType& rrType) {
-		m_rrType = rrType;
-	}
-
-private:
-template<bool T>
-size_t
-wireEncode(EncodingImpl<T> & block) const;
-
-public:
-
-const Block&
-wireEncode() const;
-
-void
-wireDecode(const Block& wire);
-
-
-Interest
-toWire() const;
-
-void
-fromWire(const Name &name, const Interest& interest);
-
-
-
-
-
-public:
-	Name m_authorityZone;
-	enum QueryType m_queryType;
-	time::milliseconds m_interestLifetime;
-	Name m_rrLabel;
-	enum RRType m_rrType;
-
-	mutable Block m_wire;
-	//bool hasWire;
-};
-
-} /* namespace ndn */
-
-#endif /* QUERY_H_ */
diff --git a/src/query.hpp b/src/query.hpp
new file mode 100644
index 0000000..48ef464
--- /dev/null
+++ b/src/query.hpp
@@ -0,0 +1,152 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014, Regents of the University of California.
+ *
+ * This file is part of NDNS (Named Data Networking Domain Name Service).
+ * See AUTHORS.md for complete list of NDNS authors and contributors.
+ *
+ * NDNS is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef NDNS_QUERY_HPP
+#define NDNS_QUERY_HPP
+
+#include "rr.hpp"
+
+#include <ndn-cxx/name.hpp>
+
+namespace ndn {
+namespace ndns {
+
+class Query
+{
+public:
+
+  enum QueryType {
+    QUERY_DNS,
+    QUERY_DNS_R
+  };
+
+  Query();
+
+  virtual ~Query();
+
+  const Name& getAuthorityZone() const {
+    return m_authorityZone;
+  }
+
+  void setAuthorityZone(const Name& authorityZone) {
+    m_authorityZone = authorityZone;
+  }
+
+  time::milliseconds getInterestLifetime() const {
+    return m_interestLifetime;
+  }
+
+  void setInterestLifetime(time::milliseconds interestLifetime) {
+    m_interestLifetime = interestLifetime;
+  }
+
+  enum QueryType getQueryType() const {
+    return m_queryType;
+  }
+
+  void setQueryType(enum QueryType queryType) {
+    m_queryType = queryType;
+  }
+
+  const Name& getRrLabel() const {
+    return m_rrLabel;
+  }
+
+  void setRrLabel(const Name& rrLabel) {
+    m_rrLabel = rrLabel;
+  }
+
+  const RRType& getRrType() const {
+    return m_rrType;
+  }
+
+  void setRrType(const RRType& rrType) {
+    m_rrType = rrType;
+  }
+
+  static std::string
+  toString(QueryType qType)
+  {
+    std::string label;
+    switch (qType)
+      {
+      case QUERY_DNS:
+        label = "DNS";
+        break;
+      case QUERY_DNS_R:
+        label = "DNS-R";
+        break;
+      default:
+        label = "Default";
+        break;
+      }
+    return label;
+
+  }
+
+  static const QueryType
+  toQueryType(const std::string& str)
+  {
+    QueryType atype;
+    if (str == "DNS") {
+      atype = QUERY_DNS;
+    }
+    else if (str == "DNS-R") {
+      atype = QUERY_DNS_R;
+    }
+    else {
+      atype = QUERY_DNS;
+    }
+    return atype;
+  }
+
+private:
+  template<bool T>
+  size_t
+  wireEncode(EncodingImpl<T> & block) const;
+
+public:
+
+  const Block&
+  wireEncode() const;
+
+  void
+  wireDecode(const Block& wire);
+
+
+  Interest
+  toWire() const;
+
+  void
+  fromWire(const Name &name, const Interest& interest);
+
+public:
+  Name m_authorityZone;
+  enum QueryType m_queryType;
+  time::milliseconds m_interestLifetime;
+  Name m_rrLabel;
+  enum RRType m_rrType;
+
+  mutable Block m_wire;
+};
+
+} // namespace ndns
+} // namespace ndn
+
+#endif // NDNS_QUERY_HPP
diff --git a/src/resolver.cpp b/src/resolver.cpp
index 39da63d..fb9dd13 100644
--- a/src/resolver.cpp
+++ b/src/resolver.cpp
@@ -1,26 +1,45 @@
-/*
- * resolver.cpp
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014, Regents of the University of California.
  *
- *  Created on: 18 Jul, 2014
- *      Author: shock
+ * This file is part of NDNS (Named Data Networking Domain Name Service).
+ * See AUTHORS.md for complete list of NDNS authors and contributors.
+ *
+ * NDNS is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "resolver.h"
+#include "resolver.hpp"
 
 namespace ndn {
+namespace ndns {
 
-Resolver::Resolver() {
-	// TODO Auto-generated constructor stub
+Resolver::Resolver()
+{
 
 }
 
-Resolver::~Resolver() {
-	// TODO Auto-generated destructor stub
+Resolver::~Resolver()
+{
 }
-const RR Resolver::iterativelyResolve(const string domain, const string name){
-	return "ex";
+
+const RR Resolver::iterativelyResolve(const std::string& domain, const std::string& name)
+{
+  return "ex";
 }
-const RR Resolver::recusivelyResolve(const string domain, const string name){
-	return "ex";
+
+const RR Resolver::recusivelyResolve(const std::string& domain, const std::string& name)
+{
+  return "ex";
 }
-} /* namespace ndn */
+
+} // namespace ndns
+} // namespace ndn
diff --git a/src/resolver.h b/src/resolver.h
deleted file mode 100644
index 1dcdd6d..0000000
--- a/src/resolver.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * resolver.h
- *
- *  Created on: 18 Jul, 2014
- *      Author: shock
- */
-
-#ifndef RESOLVER_H_
-#define RESOLVER_H_
-
-#include <string>
-#include "rr.h"
-
-
-using namespace std;
-
-namespace ndn {
-
-class Resolver {
-public:
-	Resolver();
-	virtual ~Resolver();
-
-
-	const RR iterativelyResolve(const string domain, const string name);
-	const RR recusivelyResolve(const string domain, const string name);
-
-};
-
-} /* namespace ndn */
-
-#endif /* RESOLVER_H_ */
diff --git a/src/resolver.hpp b/src/resolver.hpp
new file mode 100644
index 0000000..d690c43
--- /dev/null
+++ b/src/resolver.hpp
@@ -0,0 +1,42 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014, Regents of the University of California.
+ *
+ * This file is part of NDNS (Named Data Networking Domain Name Service).
+ * See AUTHORS.md for complete list of NDNS authors and contributors.
+ *
+ * NDNS is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef NDNS_RESOLVER_HPP
+#define NDNS_RESOLVER_HPP
+
+#include "rr.hpp"
+
+namespace ndn {
+namespace ndns {
+
+class Resolver {
+public:
+  Resolver();
+  virtual ~Resolver();
+
+
+  const RR iterativelyResolve(const std::string& domain, const std::string& name);
+  const RR recusivelyResolve(const std::string& domain, const std::string& name);
+
+};
+
+} // namespace ndns
+} // namespace ndn
+
+#endif // NDNS_RESOLVER_HPP
diff --git a/src/response.cpp b/src/response.cpp
index a4c7746..f0c5b17 100644
--- a/src/response.cpp
+++ b/src/response.cpp
@@ -1,121 +1,128 @@
-/*
- * response.cpp
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014, Regents of the University of California.
  *
- *  Created on: 19 Jul, 2014
- *      Author: shock
+ * This file is part of NDNS (Named Data Networking Domain Name Service).
+ * See AUTHORS.md for complete list of NDNS authors and contributors.
+ *
+ * NDNS is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "response.h"
-
+#include "response.hpp"
 
 
 namespace ndn {
+namespace ndns {
 
-Response::Response() {
-	// TODO Auto-generated constructor stub
-
+Response::Response()
+{
 }
 
-Response::~Response() {
-	// TODO Auto-generated destructor stub
+Response::~Response()
+{
 }
 
 
-
 Data
 Response::toWire() const
 {
-	Name name = this->m_queryName;
-	name.append(this->m_serial);
+  Name name = this->m_queryName;
+  name.append(this->m_serial);
 
-	Data data(name);
+  Data data(name);
 
-	data.setFreshnessPeriod(this->m_freshness);
+  data.setFreshnessPeriod(this->m_freshness);
 
-	string content = "";
+  string content = "";
 
-	size_t totalLen = 0;
-	Block block = Block();
-	block.push_back
-		(nonNegativeIntegerBlock
-				(tlv::ndns::Type, static_cast<unsigned long>(this->m_responseType))
-		);
+  size_t totalLen = 0;
+  Block block = Block();
+  block.push_back
+    (nonNegativeIntegerBlock
+     (tlv::ndns::Type, static_cast<unsigned long>(this->m_responseType))
+     );
 
-	block.push_back
-			(nonNegativeIntegerBlock
-					(tlv::ndns::Fressness, this->m_freshness.count())
-			);
+  block.push_back
+    (nonNegativeIntegerBlock
+     (tlv::ndns::Fressness, this->m_freshness.count())
+     );
 
-	Block block2 = Block(tlv::ndns::ContentBlob);
-	block2.push_back
-			(nonNegativeIntegerBlock
-					(tlv::ndns::NumberOfRRData, this->m_numberOfRR)
-			);
+  Block block2 = Block(tlv::ndns::ContentBlob);
+  block2.push_back
+    (nonNegativeIntegerBlock
+     (tlv::ndns::NumberOfRRData, this->m_numberOfRR)
+     );
 
-	for (int i=0; i<this->m_numberOfRR; i++)
-	{
-		RR rr = m_rrs[i];
-		block2.push_back(rr.toWire());
-	}
+  for (int i=0; i<this->m_numberOfRR; i++)
+    {
+      RR rr = m_rrs[i];
+      block2.push_back(rr.toWire());
+    }
 
-	block.push_back(block2);
+  block.push_back(block2);
 
-	return data;
+  return data;
 
 }
 
 void
 Response::fromWire(const Interest &interest, const Data &data)
 {
-    Name dataName;
-    dataName = data.getName();
+  Name dataName;
+  dataName = data.getName();
 
-    int qtflag = -1;
-    size_t len = dataName.size();
-    for (size_t i=0; i<len; i++)
+  int qtflag = -1;
+  size_t len = dataName.size();
+  for (size_t i=0; i<len; i++)
     {
-    	string comp = dataName.get(i).toEscapedString();
-    	if (comp == ndn::toString(QueryType::DNS) || comp == ndn::toString(QueryType::DNS_R))
-    	{
-    		qtflag = i;
-    		break;
-    	}
+      string comp = dataName.get(i).toEscapedString();
+      if (comp == ndn::toString(QueryType::DNS) || comp == ndn::toString(QueryType::DNS_R))
+        {
+          qtflag = i;
+          break;
+        }
     }//for
 
-    if (qtflag == -1)
+  if (qtflag == -1)
     {
-    	cerr<<"There is no QueryType in the Interest Name: "<<dataName<<endl;
-    	return;
+      cerr<<"There is no QueryType in the Interest Name: "<<dataName<<endl;
+      return;
     }
 
-    this->m_queryName = dataName.getPrefix(-1);
+  this->m_queryName = dataName.getPrefix(-1);
 
-    string last = dataName.get(len-1).toEscapedString();
-    if (ndn::toRRType(last) == RRType::UNKNOWN)
+  string last = dataName.get(len-1).toEscapedString();
+  if (ndn::toRRType(last) == RRType::UNKNOWN)
     {
-    	this->m_serial = "";
+      this->m_serial = "";
     } else
     {
-    	this->m_serial = last;
+      this->m_serial = last;
     }
 
-    Block block = data.getContent();
-    this->m_numberOfRR = readNonNegativeInteger(block.get(tlv::ndns::NumberOfRRData));
+  Block block = data.getContent();
+  this->m_numberOfRR = readNonNegativeInteger(block.get(tlv::ndns::NumberOfRRData));
 
-    Block block2 = block.get(tlv::ndns::ContentBlob);
-    for (int i=0; i<this->m_numberOfRR; i++)
+  Block block2 = block.get(tlv::ndns::ContentBlob);
+  for (int i=0; i<this->m_numberOfRR; i++)
     {
-    	Block block3 = block2.get(tlv::ndns::RRData);
-    	RR rr;
-    	rr.fromWire(block3);
-    	m_rrs.push_back(rr);
+      Block block3 = block2.get(tlv::ndns::RRData);
+      RR rr;
+      rr.fromWire(block3);
+      m_rrs.push_back(rr);
     }
 
 }
 
 
-} /* namespace ndn */
-
-
-
-
+} // namespace ndns
+} // namespace ndn
diff --git a/src/response.h b/src/response.h
deleted file mode 100644
index 52e11c6..0000000
--- a/src/response.h
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * response.h
- *
- *  Created on: 19 Jul, 2014
- *      Author: shock
- */
-
-#ifndef RESPONSE_H_
-#define RESPONSE_H_
-
-#include <boost/asio.hpp> // /opt/local/include
-#include <boost/bind.hpp>
-#include <boost/date_time/posix_time/posix_time.hpp>
-#include <boost/noncopyable.hpp>
-
-#include <ndn-cxx/face.hpp> // /usr/local/include
-#include <ndn-cxx/name.hpp>
-#include <ndn-cxx/data.hpp>
-
-#include <ndn-cxx/encoding/block-helpers.hpp>
-#include <ndn-cxx/encoding/block.hpp>
-#include <ndn-cxx/encoding/tlv-ndnd.hpp>
-
-#include<vector>
-
-#include "ndns-tlv.h"
-
-using namespace std;
-
-namespace ndn {
-
-
-
-enum class ResponseType
-{
-	NDNS_Resp,
-	NDNS_Nack,
-	NDNS_Auth
-};
-
-
-static const string
-toString(ResponseType responseType) const
-{
-	string label;
-	switch (responseType)
-	{
-		case ResponseType::NDNS_Resp:
-			label = "NDNS Resp";
-			break;
-		case ResponseType::NDNS_Nack:
-			label = "NDNS Nack";
-			break;
-		case ResponseType::NDNS_Auth:
-			label = "NDNS Auth";
-			break;
-		default:
-			label = "Default";
-			break;
-	}
-	return label;
-}
-
-class Response {
-public:
-	Response();
-	virtual ~Response();
-
-Data
-toWire() const;
-
-void
-fromWire(const Interest &interest, const Data &data);
-
-private:
-	Name m_queryName;
-	string m_serial;
-	ResponseType m_responseType;
-
-	time::milliseconds m_freshness;
-
-	unsigned int m_numberOfRR;
-	vector<RR>  m_rrs;
-
-};
-
-} /* namespace ndn */
-
-#endif /* RESPONSE_H_ */
diff --git a/src/response.hpp b/src/response.hpp
new file mode 100644
index 0000000..95a4cda
--- /dev/null
+++ b/src/response.hpp
@@ -0,0 +1,99 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014, Regents of the University of California.
+ *
+ * This file is part of NDNS (Named Data Networking Domain Name Service).
+ * See AUTHORS.md for complete list of NDNS authors and contributors.
+ *
+ * NDNS is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef NDNS_RESPONSE_HPP
+#define NDNS_RESPONSE_HPP
+
+#include <boost/asio.hpp>
+#include <boost/bind.hpp>
+#include <boost/date_time/posix_time/posix_time.hpp>
+#include <boost/noncopyable.hpp>
+
+#include <ndn-cxx/face.hpp> // /usr/local/include
+#include <ndn-cxx/name.hpp>
+#include <ndn-cxx/data.hpp>
+
+#include <ndn-cxx/encoding/block-helpers.hpp>
+#include <ndn-cxx/encoding/block.hpp>
+#include <ndn-cxx/encoding/tlv-ndnd.hpp>
+
+#include <vector>
+
+#include "ndns-tlv.hpp"
+
+namespace ndn {
+namespace ndns {
+
+enum ResponseType
+  {
+    NDNS_Resp,
+    NDNS_Nack,
+    NDNS_Auth
+  };
+
+
+static std::string
+toString(ResponseType responseType) const
+{
+  string label;
+  switch (responseType)
+    {
+    case ResponseType::NDNS_Resp:
+      label = "NDNS Resp";
+      break;
+    case ResponseType::NDNS_Nack:
+      label = "NDNS Nack";
+      break;
+    case ResponseType::NDNS_Auth:
+      label = "NDNS Auth";
+      break;
+    default:
+      label = "Default";
+      break;
+    }
+  return label;
+}
+
+class Response {
+public:
+  Response();
+  virtual ~Response();
+
+  Data
+  toWire() const;
+
+  void
+  fromWire(const Interest &interest, const Data &data);
+
+private:
+  Name m_queryName;
+  std::string m_serial;
+  ResponseType m_responseType;
+
+  time::milliseconds m_freshness;
+
+  unsigned int m_numberOfRR;
+  vector<RR>  m_rrs;
+
+};
+
+} // namespace ndns
+} // namespace ndn
+
+#endif // NDNS_RESPONSE_HPP
diff --git a/src/rr.cpp b/src/rr.cpp
index 0b9d6d8..4f55e21 100644
--- a/src/rr.cpp
+++ b/src/rr.cpp
@@ -1,79 +1,89 @@
-/*
- * RR.cpp
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014, Regents of the University of California.
  *
- *  Created on: 18 Jul, 2014
- *      Author: shock
+ * This file is part of NDNS (Named Data Networking Domain Name Service).
+ * See AUTHORS.md for complete list of NDNS authors and contributors.
+ *
+ * NDNS is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "RR.h"
+#include "rr.hpp"
 
 namespace ndn {
+namespace ndns {
 
 RR::RR()
-: id (0Lu)
-, m_rrData("ex.com")
+  : m_id(0Lu)
+  , m_rrData("ex.com")
 {
-	// TODO Auto-generated constructor stub
-
 }
 
-RR::~RR() {
-	// TODO Auto-generated destructor stub
+RR::~RR()
+{
 }
 
 template<bool T>
 size_t
 RR::wireEncode(EncodingImpl<T> & block) const
 {
-	size_t totalLength = 0;
-	string msg = this->getRrdata();
-	totalLength += prependByteArrayBlock(block,
-						tlv::ndns::RRData,
-						reinterpret_cast<const uint8_t*>(msg.c_str()),
-						msg.size()
-						);
+  size_t totalLength = 0;
+  const std::string& msg = this->getRrdata();
+  totalLength += prependByteArrayBlock(block,
+                                       tlv::ndns::RRData,
+                                       reinterpret_cast<const uint8_t*>(msg.c_str()),
+                                       msg.size()
+                                       );
 
-	return totalLength;
+  return totalLength;
 }
 
 const Block&
 RR::wireEncode() const
 {
-	if (m_wire.hasWire())
-		return m_wire;
-	EncodingEstimator estimator;
-	size_t estimatedSize = wireEncode(estimator);
-	EncodingBuffer buffer(estimatedSize, 0);
-	wireEncode(buffer);
-	m_wire = buffer.block();
-	return m_wire;
+  if (m_wire.hasWire())
+    return m_wire;
+  EncodingEstimator estimator;
+  size_t estimatedSize = wireEncode(estimator);
+  EncodingBuffer buffer(estimatedSize, 0);
+  wireEncode(buffer);
+  m_wire = buffer.block();
+  return m_wire;
 }
 
 void
 RR::wireDecode(const Block& wire)
 {
-	if (!wire.hasWire()) {
-	    throw Tlv::Error("The supplied block does not contain wire format");
-	}
+  if (!wire.hasWire()) {
+    throw Tlv::Error("The supplied block does not contain wire format");
+  }
 
-	if (wire.type() != tlv::ndns::RRData)
-	    throw Tlv::Error("Unexpected TLV type when decoding Content");
+  if (wire.type() != tlv::ndns::RRData)
+    throw Tlv::Error("Unexpected TLV type when decoding Content");
 
-	m_wire = wire;
-	m_wire.parse();
+  m_wire = wire;
+  m_wire.parse();
 
-	Block::element_const_iterator it = m_wire.elements_begin();
+  Block::element_const_iterator it = m_wire.elements_begin();
 
-	if (it != m_wire.elements_end() && it->type() == tlv::ndns::RRData)
-	{
-		m_rrData = string(reinterpret_cast<const char*>(it->value()), it->value_size());
-		it ++;
-	} else {
-		throw Tlv::Error("not the RRData Type");
-	}
+  if (it != m_wire.elements_end() && it->type() == tlv::ndns::RRData)
+    {
+      m_rrData = std::string(reinterpret_cast<const char*>(it->value()), it->value_size());
+      it ++;
+    } else {
+    throw Tlv::Error("not the RRData Type");
+  }
 
 }
 
-
-
-} /* namespace ndn */
+} // namespace ndns
+} // namespace ndn
diff --git a/src/rr.h b/src/rr.h
deleted file mode 100644
index d6de294..0000000
--- a/src/rr.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * RR.h
- *
- *  Created on: 18 Jul, 2014
- *      Author: shock
- */
-
-#ifndef RR_H_
-#define RR_H_
-
-#include <string>
-
-
-#include "ndns-tlv.h"
-#include <ndn-cxx/encoding/block.hpp>
-#include <ndn-cxx/interest.hpp>
-
-
-using namespace std;
-
-namespace ndn {
-
-enum RRType
-{
-	NS,
-	TXT,
-	UNKNOWN
-};
-
-
-
-
-class RR {
-public:
-	RR();
-	virtual ~RR();
-
-	const string& getRrdata() const {
-		return m_rrData;
-	}
-
-	void setRrdata(const string& rrdata) {
-		this->m_rrData = rrdata;
-	}
-
-
-
-private:
-template<bool T>
-size_t
-wireEncode(EncodingImpl<T> & block) const;
-
-public:
-
-const Block&
-wireEncode() const;
-
-void
-wireDecode(const Block& wire);
-
-
-Interest
-toWire() const;
-
-
-private:
-	unsigned long id;
-	string m_rrData;
-
-	mutable Block m_wire;
-};
-
-} /* namespace ndn */
-
-#endif /* RR_H_ */
diff --git a/src/rr.hpp b/src/rr.hpp
new file mode 100644
index 0000000..95001e9
--- /dev/null
+++ b/src/rr.hpp
@@ -0,0 +1,82 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014, Regents of the University of California.
+ *
+ * This file is part of NDNS (Named Data Networking Domain Name Service).
+ * See AUTHORS.md for complete list of NDNS authors and contributors.
+ *
+ * NDNS is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef NDNS_RR_HPP
+#define NDNS_RR_HPP
+
+#include "ndns-tlv.hpp"
+
+#include <ndn-cxx/encoding/block.hpp>
+#include <ndn-cxx/interest.hpp>
+
+namespace ndn {
+namespace ndns {
+
+enum RRType
+  {
+    NS,
+    TXT,
+    UNKNOWN
+  };
+
+class RR {
+public:
+  RR();
+  virtual ~RR();
+
+  const std::string&
+  getRrdata() const
+  {
+    return m_rrData;
+  }
+
+  void setRrdata(const std::string& rrdata)
+  {
+    this->m_rrData = rrdata;
+  }
+
+private:
+  template<bool T>
+  size_t
+  wireEncode(EncodingImpl<T> & block) const;
+
+public:
+
+  const Block&
+  wireEncode() const;
+
+  void
+  wireDecode(const Block& wire);
+
+
+  Interest
+  toWire() const;
+
+
+private:
+  uint32_t m_id;
+  std::string m_rrData;
+
+  mutable Block m_wire;
+};
+
+} // namespace ndns
+} // namespace ndn
+
+#endif // NDNS_RR_HPP
diff --git a/src/zone.cpp b/src/zone.cpp
index 9483941..f5a33ba 100644
--- a/src/zone.cpp
+++ b/src/zone.cpp
@@ -1,25 +1,36 @@
-/*
- * zone.cpp
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014, Regents of the University of California.
  *
- *  Created on: 18 Jul, 2014
- *      Author: shock
+ * This file is part of NDNS (Named Data Networking Domain Name Service).
+ * See AUTHORS.md for complete list of NDNS authors and contributors.
+ *
+ * NDNS is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "zone.h"
+#include "zone.hpp"
 
 namespace ndn {
+namespace ndns {
 
 Zone::Zone() {
-	// TODO Auto-generated constructor stub
-
 }
 
 Zone::~Zone() {
-	// TODO Auto-generated destructor stub
 }
 
-const RR Zone::hasName(string key) {
-	return "example.key";
+const RR Zone::hasName(const std::string& key) {
+  return "example.key";
 }
 
-} /* namespace ndn */
+} // namespace ndns
+} // namespace ndn
diff --git a/src/zone.h b/src/zone.h
deleted file mode 100644
index bdc2581..0000000
--- a/src/zone.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * zone.h
- *
- *  Created on: 18 Jul, 2014
- *      Author: shock
- */
-
-#ifndef ZONE_H_
-#define ZONE_H_
-
-#include <string>
-#include "rr.h"
-
-
-using namespace std;
-
-namespace ndn {
-
-class Zone {
-public:
-	Zone();
-	virtual ~Zone();
-
-	const RR hasName(string key);
-
-};
-
-} /* namespace ndn */
-
-#endif /* ZONE_H_ */
diff --git a/src/zone.hpp b/src/zone.hpp
new file mode 100644
index 0000000..a54c9a8
--- /dev/null
+++ b/src/zone.hpp
@@ -0,0 +1,40 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014, Regents of the University of California.
+ *
+ * This file is part of NDNS (Named Data Networking Domain Name Service).
+ * See AUTHORS.md for complete list of NDNS authors and contributors.
+ *
+ * NDNS is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NDNS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NDNS, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef NDNS_ZONE_HPP
+#define NDNS_ZONE_HPP
+
+#include "rr.hpp"
+
+namespace ndn {
+namespace ndns {
+
+class Zone {
+public:
+  Zone();
+  virtual ~Zone();
+
+  const RR hasName(const std::string& key);
+
+};
+
+} // namespace ndns
+} // namespace ndn
+
+#endif // NDNS_ZONE_HPP