Prepare for Django 1.7 support

As a first step, I want to get tox and Travis in sync.

* Add py27-1.7.X, docs, flake8, and coverage targets to tox
* Remove unnecessary TESTENV variable
* Organize TOXENVs in .travis.yml
* Remove pep8 commands from .travis.yml (now run in tox instead)
* Temporarily allow failures on 1.7
* Add `mock` as a `test_requires`
* Clean up the tests/requirements files. Most of this is installed via setup.py. Only include optional requirements which are needed by tests here (`django-celery`, `djtables`). Unfortunately, we also have to duplicate the `mock` requirement here since tox doesn't read test_requires https://bitbucket.org/hpk42/tox/issue/13/tox-should-reuse-tests_require
* Fix all flake8 warnings
My plan was to change this once I actually got the 1.7 branch working.