metadata multi-field support and raw YAML #347

Adds support for multiple fields feeding a single YAML key, catching extra options for existing keys, and adding raw YAML metadata support if a schema is not defined for a key. Closes #347