Separated v4l2_metadata into two pieces.

v4l2_metadata and metadata/metadata. The previous design did not work
as intended for testing (it incorrectly assumed that a constructor
would call an overridden method of a child class), plus this way
makes more sense.

BUG: 30140438
Change-Id: I1293535932fed6daed766682421b1215739e17dd
TEST: Unit tests pass
diff --git a/modules/camera/3_4/Android.mk b/modules/camera/3_4/Android.mk
index 1ced4a5..b6f0fa6 100644
--- a/modules/camera/3_4/Android.mk
+++ b/modules/camera/3_4/Android.mk
@@ -39,6 +39,7 @@
 
 v4l2_src_files := \
   camera.cpp \
+  metadata/metadata.cpp \
   stream.cpp \
   stream_format.cpp \
   v4l2_camera.cpp \
@@ -48,7 +49,7 @@
   v4l2_wrapper.cpp \
 
 v4l2_test_files := \
-  v4l2_metadata_test.cpp \
+  metadata/metadata_test.cpp \
 
 # V4L2 Camera HAL.
 # ==============================================================================