face: declare Face class and FaceId type

Change-Id: Iaff4e3b146d8d26de32ca745b6f9d52454d933cf
diff --git a/daemon/face/face.hpp b/daemon/face/face.hpp
new file mode 100644
index 0000000..0a758b3
--- /dev/null
+++ b/daemon/face/face.hpp
@@ -0,0 +1,28 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (C) 2014 Named Data Networking Project
+ * See COPYING for copyright and distribution information.
+ */
+
+#ifndef NFD_FACE_FACE_H
+#define NFD_FACE_FACE_H
+
+#include "common.hpp"
+
+namespace ndn {
+
+/** \class FaceId
+ *  \brief identifies a face
+ */
+typedef int FaceId;
+
+/** \class Face
+ *  \brief represents a face
+ */
+class Face : noncopyable
+{
+};
+
+} // namespace ndn
+
+#endif // NFD_FACE_FACE_H
diff --git a/tests/face/face.cpp b/tests/face/face.cpp
new file mode 100644
index 0000000..93a78ec
--- /dev/null
+++ b/tests/face/face.cpp
@@ -0,0 +1,19 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (C) 2014 Named Data Networking Project
+ * See COPYING for copyright and distribution information.
+ */
+
+#include "face/face.hpp"
+
+#include <boost/test/unit_test.hpp>
+
+namespace ndn {
+
+BOOST_AUTO_TEST_SUITE(FaceFace)
+
+// no unit test here: this ensures face.hpp can compile on its own
+
+BOOST_AUTO_TEST_SUITE_END()
+
+} // namespace ndn