cpp: Add bioformats component (build infrastructure and BaseMetadata)

This PR adds
- initial bioformats build infrastructure; builds and installs a shared library and headers, as well as cmake configuration for end use by third parties
- BaseMetadata class; this is a class which does nothing
- header tests

It includes placeholders in the cmake configuration for where the autogenerated metadata classes will be added as well as the static classes for when they are written.