This patch adds support for tox. Tox is used to run various python compliance tests. This enables pep8 tests, as well as python2 and python3 compatibility as well as coverage and documentation building.