[libc++] Implement C++20's P0476R2: std::bit_cast

Thanks to Arthur O'Dwyer for fixing up some of the tests.

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

NOKEYCHECK=True
GitOrigin-RevId: b1fb3d75c953fa2e02ebddb6ebbf100f99786f0c
diff --git a/include/module.modulemap b/include/module.modulemap
index 4986fd6..e49d78a 100644
--- a/include/module.modulemap
+++ b/include/module.modulemap
@@ -335,6 +335,10 @@
   module bit {
     header "bit"
     export *
+
+    module __bit {
+      module bit_cast { private header "__bit/bit_cast.h" }
+    }
   }
   module bitset {
     header "bitset"