core: drop std::function and ndn::Exclude from common.hpp, add ndn::optional

Change-Id: Ie3983d8b6f9929430efd8ada8d942e3f95755cd4
diff --git a/daemon/fw/forwarder.hpp b/daemon/fw/forwarder.hpp
index 36af43a..bcb3caf 100644
--- a/daemon/fw/forwarder.hpp
+++ b/daemon/fw/forwarder.hpp
@@ -259,7 +259,7 @@
    */
 #ifdef WITH_TESTS
   virtual void
-  dispatchToStrategy(pit::Entry& pitEntry, function<void(fw::Strategy&)> trigger)
+  dispatchToStrategy(pit::Entry& pitEntry, std::function<void(fw::Strategy&)> trigger)
 #else
   template<class Function>
   void
diff --git a/daemon/fw/strategy.cpp b/daemon/fw/strategy.cpp
index ae1b4bd..278e016 100644
--- a/daemon/fw/strategy.cpp
+++ b/daemon/fw/strategy.cpp
@@ -125,7 +125,7 @@
       return {input.getPrefix(i + 1), input[i].toVersion(), input.getSubName(i + 1)};
     }
   }
-  return {input, ndn::nullopt, PartialName()};
+  return {input, nullopt, PartialName()};
 }
 
 Name
diff --git a/daemon/fw/strategy.hpp b/daemon/fw/strategy.hpp
index b52c05b..0df65b9 100644
--- a/daemon/fw/strategy.hpp
+++ b/daemon/fw/strategy.hpp
@@ -336,7 +336,7 @@
   struct ParsedInstanceName
   {
     Name strategyName; ///< strategy name without parameters
-    ndn::optional<uint64_t> version; ///< whether strategyName contains a version component
+    optional<uint64_t> version; ///< whether strategyName contains a version component
     PartialName parameters; ///< parameter components
   };