Implement best practice check for consistent STIX versioning. Fixes #10
Merged origin/master
Merged origin/master
Merge pull request #41 from STIXProject/latest_version_bp

Implement best practice check for consistent STIX versioning. Fixes #10
Merged origin/master
Added UnknownNamespaceError and UnknownVocabularyError to errors.py
Added support for multiple versions of STIX in best practice code
that checks for latest component versions and latest vocab
versions.
* Moved a lot of utility code from best practice functions
  into stix.common.py.
* Made BestPracticeWarning _inner dictionary an instance of
  collections.OrderedDict
* Made `message` always appear in BestPracticeWarning.as_dict().