Include bind in ndnboost.
diff --git a/ndnboost/concept/usage.hpp b/ndnboost/concept/usage.hpp
new file mode 100644
index 0000000..085cdd9
--- /dev/null
+++ b/ndnboost/concept/usage.hpp
@@ -0,0 +1,44 @@
+// Copyright David Abrahams 2006. Distributed under the Boost
+// Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+#ifndef BOOST_CONCEPT_USAGE_DWA2006919_HPP
+# define BOOST_CONCEPT_USAGE_DWA2006919_HPP
+
+# include <ndnboost/concept/assert.hpp>
+# include <ndnboost/detail/workaround.hpp>
+# include <ndnboost/concept/detail/backward_compatibility.hpp>
+
+namespace ndnboost { namespace concepts { 
+
+# if BOOST_WORKAROUND(__GNUC__, == 2)
+
+#  define BOOST_CONCEPT_USAGE(model) ~model()
+
+# else 
+
+template <class Model>
+struct usage_requirements
+{
+    ~usage_requirements() { ((Model*)0)->~Model(); }
+};
+
+#  if BOOST_WORKAROUND(__GNUC__, <= 3)
+
+#   define BOOST_CONCEPT_USAGE(model)                                    \
+      model(); /* at least 2.96 and 3.4.3 both need this :( */           \
+      BOOST_CONCEPT_ASSERT((ndnboost::concepts::usage_requirements<model>)); \
+      ~model()
+
+#  else
+
+#   define BOOST_CONCEPT_USAGE(model)                                    \
+      BOOST_CONCEPT_ASSERT((ndnboost::concepts::usage_requirements<model>)); \
+      ~model()
+
+#  endif
+
+# endif 
+
+}} // namespace ndnboost::concepts
+
+#endif // BOOST_CONCEPT_USAGE_DWA2006919_HPP