Add initial capability to validate SystemMetadata instances.

Thsi is a shallow validity, and only ensures that required top-level elements are present.  It does not include testing data types, or schema-level validity. Closes issue #40.