Standardize use of filesystem

If <filesystem> exists, use that, if it doesn't, try
<experimental/filesystem>. Either way, access it from std via a
namespace splice.

Change-Id: I5b35ee9f74b88e188cb3ca3fed9abaec64933697
Signed-off-by: Vernon Mauery <vernon.mauery@intel.com>
diff --git a/transporthandler.cpp b/transporthandler.cpp
index 98d9573..95b983a 100644
--- a/transporthandler.cpp
+++ b/transporthandler.cpp
@@ -5,7 +5,17 @@
 #include <stdint.h>
 #include <arpa/inet.h>
 #include <string>
+#if __has_include(<filesystem>)
+#include <filesystem>
+#elif __has_include(<experimental/filesystem>)
 #include <experimental/filesystem>
+namespace std {
+  // splice experimental::filesystem into std
+  namespace filesystem = std::experimental::filesystem;
+}
+#else
+#  error filesystem not available
+#endif
 
 #include "app/channel.hpp"
 #include "host-ipmid/ipmid-api.h"
@@ -36,7 +46,7 @@
 using namespace phosphor::logging;
 using namespace sdbusplus::xyz::openbmc_project::Common::Error;
 
-namespace fs = std::experimental::filesystem;
+namespace fs = std::filesystem;
 
 void register_netfn_transport_functions() __attribute__((constructor));