Avoid deprecated ndn-cxx functions

Also, waf is updated to version 2.0.23

Change-Id: I053d7dce733455ec352931a1614082542ca00570
diff --git a/src/socket.cpp b/src/socket.cpp
index 346e968..e2c8b66 100644
--- a/src/socket.cpp
+++ b/src/socket.cpp
@@ -55,8 +55,8 @@
   if (m_userPrefix != DEFAULT_NAME)
     m_registeredPrefixList[m_userPrefix] =
       m_face.setInterestFilter(m_userPrefix,
-                               bind(&Socket::onInterest, this, _1, _2),
-                               [] (const Name&, const std::string&) {});
+                               [this] (auto&&... args) { onInterest(std::forward<decltype(args)>(args)...); },
+                               [] (auto&&...) {});
   NDN_LOG_DEBUG("<< Socket::Socket");
 }
 
@@ -84,8 +84,8 @@
   m_logic.addUserNode(prefix, signingId, session);
   m_registeredPrefixList[prefix] =
     m_face.setInterestFilter(prefix,
-                             bind(&Socket::onInterest, this, _1, _2),
-                             [] (const Name&, const std::string&) {});
+                             [this] (auto&&... args) { onInterest(std::forward<decltype(args)>(args)...); },
+                             [] (auto&&...) {});
 
   NDN_LOG_DEBUG("<< addSyncNode");
 }
@@ -110,14 +110,14 @@
 Socket::publishData(const uint8_t* buf, size_t len, const ndn::time::milliseconds& freshness,
                     const Name& prefix)
 {
-  publishData(ndn::encoding::makeBinaryBlock(ndn::tlv::Content, buf, len), freshness, prefix);
+  publishData(ndn::makeBinaryBlock(ndn::tlv::Content, {buf, len}), freshness, prefix);
 }
 
 void
 Socket::publishData(const uint8_t* buf, size_t len, const ndn::time::milliseconds& freshness,
                     const uint64_t& seqNo, const Name& prefix)
 {
-  publishData(ndn::encoding::makeBinaryBlock(ndn::tlv::Content, buf, len), freshness, seqNo, prefix);
+  publishData(ndn::makeBinaryBlock(ndn::tlv::Content, {buf, len}), freshness, seqNo, prefix);
 }
 
 void
@@ -178,7 +178,7 @@
   interest.setMustBeFresh(true);
 
   DataValidationErrorCallback failureCallback =
-    bind(&Socket::onDataValidationFailed, this, _1, _2);
+    [this] (auto&&... args) { onDataValidationFailed(std::forward<decltype(args)>(args)...); };
 
   m_face.expressInterest(interest,
                          bind(&Socket::onData, this, _1, _2, dataCallback, failureCallback),
@@ -254,8 +254,7 @@
 }
 
 void
-Socket::onDataValidationFailed(const Data& data,
-                               const ValidationError& error)
+Socket::onDataValidationFailed(const Data&, const ValidationError&)
 {
 }