Use tox to test on travis and add docs and flake8

Based on the suggestions in #631.

Travis CI now also confirm that the docs build correctly and the flake8 runs succesfully. Tox also has the advantage that it tests that beets installs correctly.

Currently flake8 does not run succesfully so it is configured to not fail the build on Travis. This branch is intended to make flake8 pass. But we still have to agree on style guide.