runtime: Bitstring implementation for subtype checking (1/4).

Implement a BitString abstraction for storing nbit-sized characters in a
single machine word (uint32).

This is used to enable an O(1) subtype check in subsequent CLs.

Test: art/test.py -b -j32 --host --target
Bug: 64692057
Change-Id: I792405e0c34242cc1206cedeb18e3e6fb687d94b
diff --git a/runtime/Android.bp b/runtime/Android.bp
index cfdac1c..3059533 100644
--- a/runtime/Android.bp
+++ b/runtime/Android.bp
@@ -534,6 +534,7 @@
         "barrier_test.cc",
         "base/arena_allocator_test.cc",
         "base/bit_field_test.cc",
+        "base/bit_string_test.cc",
         "base/bit_struct_test.cc",
         "base/bit_utils_test.cc",
         "base/bit_vector_test.cc",