build: switch to C++14

Replace our homegrown implementation of optional (based
on Boost.Optional) with optional-lite by Martin Moene.

Change-Id: I4632cbc7c705a94af0b85a335515e3430bf3cb1f
Refs: #3076
diff --git a/src/encoding/tlv.hpp b/src/encoding/tlv.hpp
index 10961c5..fc664c6 100644
--- a/src/encoding/tlv.hpp
+++ b/src/encoding/tlv.hpp
@@ -106,7 +106,8 @@
   Any                       = 19,
 };
 
-constexpr int NameComponent NDN_CXX_DEPRECATED = GenericNameComponent;
+[[deprecated("use GenericNameComponent")]]
+constexpr int NameComponent = GenericNameComponent;
 
 enum SignatureTypeValue : uint16_t {
   DigestSha256 = 0,
@@ -519,7 +520,6 @@
   }
 }
 
-
 } // namespace tlv
 } // namespace ndn