This adds the [flake8-future-import][f] plugin for flake8, which enforces the
standard set of `__future__` imports at the top of all Python files. This
revealed a fair number of files that need to be fixed.
To be revisited after #1887 is merged.
[f]: https://github.com/xZise/flake8-future-import
The travis build will fail if flake8 finds errors. Since not all code is
cleaned yet we ignore a couple of files in `setup.cfg`.
We'll gradualy clean the code remove the excluded files from `setup.cfg`.
See #669.
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.
Set the loglevel of beets to `DEBUG` but capture all logging statements with
nose. The logs are only printed when a test fails. This gives us more
information when tests fail while being completely silent on success.