net+util: fix build with gcc-7

Introduce an NDN_CXX_FALLTHROUGH macro to simplify
annotating switch cases that fall through.

Update code-style to recommend using NDN_CXX_FALLTHROUGH.

Change-Id: I80e4ff8d16a09f6ec9343f0480bc57ae0fcd1be4
diff --git a/src/util/backports-ostream-joiner.hpp b/src/util/backports-ostream-joiner.hpp
index 24a161c..75d53dd 100644
--- a/src/util/backports-ostream-joiner.hpp
+++ b/src/util/backports-ostream-joiner.hpp
@@ -27,16 +27,12 @@
 #ifndef NDN_UTIL_BACKPORTS_OSTREAM_JOINER_HPP
 #define NDN_UTIL_BACKPORTS_OSTREAM_JOINER_HPP
 
-#include "../common.hpp"
+#include "backports.hpp"
 
-#if __cplusplus >= 201402L
-#  ifdef __has_include
-#    if __has_include(<experimental/iterator>)
-#      include <experimental/iterator>
-#      if __cpp_lib_experimental_ostream_joiner >= 201411
-#        define NDN_CXX_HAVE_EXPERIMENTAL_OSTREAM_JOINER
-#      endif
-#    endif
+#if (__cplusplus >= 201402L) && NDN_CXX_HAS_INCLUDE(<experimental/iterator>)
+#  include <experimental/iterator>
+#  if __cpp_lib_experimental_ostream_joiner >= 201411
+#    define NDN_CXX_HAVE_EXPERIMENTAL_OSTREAM_JOINER
 #  endif
 #endif