Use tox on travis-ci

This allows us to run flake8 independent of tests
I think this will always use Travis's default `nosetests`, i.e. run with the same Python version.