Adds plugins to check_style test
Reworks tests

Adds support for unit tests!

The 'tests' package now takes arguments --unittests and --functests.
Travis scripts were updated to no longer use run.py.
Adds tests for unique names generation
Adds doc for escape()

[skip ci]
Adds irange() util
Adds dict utils (iteritems(), itervalues(), ...)