[libc++] Make _VSTD and alias for std

There is no practical difference between `_VSTD` and `std` so we should just remove `_VSTD`. This is the first step.

Reviewed By: ldionne, #libc

Spies: jeroen.dobbelaere, wmaxey, EricWF, lebedev.ri, __simt__, dim, mgrang, sstefan1, wenlei, smeenai, libcxx-commits, #libc_vendors

Differential Revision: https://reviews.llvm.org/D117811

GitOrigin-RevId: 453620f55ea38186cdf165b1ca2deb6c6b226132
diff --git a/docs/ReleaseNotes.rst b/docs/ReleaseNotes.rst
index 83164d7..8d64542 100644
--- a/docs/ReleaseNotes.rst
+++ b/docs/ReleaseNotes.rst
@@ -140,6 +140,10 @@
   instead. The ``<experimental/coroutine>`` header will be removed
   in LLVM 15.
 
+- ``_VSTD`` is now an alias for ``std`` instead of ``std::_LIBCPP_ABI_NAMESPACE``.
+  This is technically not a functional change, except for folks that might have been
+  using ``_VSTD`` in creative ways (which has never been officially supported).
+
 ABI Changes
 -----------
 
diff --git a/include/__config b/include/__config
index 98f136a..3c3d4b5 100644
--- a/include/__config
+++ b/include/__config
@@ -821,10 +821,10 @@
 // Inline namespaces are available in Clang/GCC/MSVC regardless of C++ dialect.
 #define _LIBCPP_BEGIN_NAMESPACE_STD namespace std { inline namespace _LIBCPP_ABI_NAMESPACE {
 #define _LIBCPP_END_NAMESPACE_STD  } }
-#define _VSTD std::_LIBCPP_ABI_NAMESPACE
+#define _VSTD std
 _LIBCPP_BEGIN_NAMESPACE_STD _LIBCPP_END_NAMESPACE_STD
 
-#if _LIBCPP_STD_VER >= 17
+#if _LIBCPP_STD_VER > 14
 #define _LIBCPP_BEGIN_NAMESPACE_FILESYSTEM \
   _LIBCPP_BEGIN_NAMESPACE_STD inline namespace __fs { namespace filesystem {
 #else