ARIA-1 Parser test suite

* This commit additionally fixes many parser bugs revealed by the test
suite, which includes adding validations that were missing.

* A new "extensions" tox suite is introduced.

* The /tests/parser cases were refactored into /tests/topology and
/tests/extensions.

* The Hello World example was fixed and refactored, as it in fact had
invalid TOSCA (it previously passed due to a missing validation).

* Parser performance was greatly improved by:

 1. Switching to the YAML C library
 2. Aggressive caching of parsed presentations
 3. The ability to skip importing the TOSCA profile
 4. The ability to skip validation of normative types
 5. A new deepcopy_fast util
 6. A new BlockingExecutor that is faster for single-threaded use

* Unicode is now fully supported for all validation and log messages. This
requires the use a unicode (u'' notation) for all .format specs.

* Additionally, PyLint comment directives have been standardized by
pushing them to column 100.
218 files changed