Add StaticProperties and MetadataReader

MetadataReader provides a clean wrapper around getting
and translating certain metadata values in a nice form.

StaticProperties will be used by Camera as the source of
truth for metadata properties, extracted directly from a reader,
rather than calling down into the device again.

BUG: 31044638
TEST: unit tests pass
Change-Id: I712a80f87e629a7288c678637de0eae0225acf96
diff --git a/modules/camera/3_4/Android.mk b/modules/camera/3_4/Android.mk
index bf888be..12e8436 100644
--- a/modules/camera/3_4/Android.mk
+++ b/modules/camera/3_4/Android.mk
@@ -42,6 +42,8 @@
   format_metadata_factory.cpp \
   metadata/enum_converter.cpp \
   metadata/metadata.cpp \
+  metadata/metadata_reader.cpp \
+  static_properties.cpp \
   stream.cpp \
   stream_format.cpp \
   v4l2_camera.cpp \
@@ -57,6 +59,7 @@
   metadata/ignored_control_delegate_test.cpp \
   metadata/map_converter_test.cpp \
   metadata/menu_control_options_test.cpp \
+  metadata/metadata_reader_test.cpp \
   metadata/metadata_test.cpp \
   metadata/no_effect_control_delegate_test.cpp \
   metadata/partial_metadata_factory_test.cpp \
@@ -67,6 +70,7 @@
   metadata/tagged_control_delegate_test.cpp \
   metadata/tagged_control_options_test.cpp \
   metadata/v4l2_control_delegate_test.cpp \
+  static_properties_test.cpp \
 
 # V4L2 Camera HAL.
 # ==============================================================================