Controlled Vocabularies

This pull request addresses the following:
* Fixed a lot of issues with third-party controlled vocabularies. Resolves #145.
* Added some documentation and samples for working with the `VocabString` class. Resolves #121