Add MetadataTable class with basic parser

Also has a method to find columns that look like they might be linked to an ontology (low specificity currently).

Renamed three of the core controlled vocabulary files for better programmatic access.
Add VocabularySet class

MetadataTable can now identify columns that are linked to an ontology with (optionally) more specificity.
Add MetadataTable.fromFile for convenience
Add controlled vocab validation
Add simple metasane script

Very crude report generation
Add MetadataTable.fieldValues method

Necessary to start checking for discrepancies in uncontrolled fields.
Add MetadataTable.findDiscrepancies

Only works for capitalization discreps, not yet hooked up to metasane script.
Remove dict.items() calls
Add whitespace discrepancy methods

Need to refactor these three methods now to reduce duplicate code. DRY!
Refactor to remove duplication in discrepancy methods

Also hook up to metasane script
Minor cleanup: use better filepath/file var names

Also add __len__ to VocabularySet.
Change method naming convention to match pep8
Add VocabularySet.from_dir class method

Needed this refactoring to ease unit-testing of this class.
Add unit tests for VocabularySet
Add tests for some of the methods in MetadataTable

More to come soon...
Finish adding tests for MetadataTable

Fixes #6.
Merge pull request #4 from jrrideout/core-functionality

Basic validation