Add flake8

This change adds flake8 to the build (travis and tox), and fixes any warnings raised by flake8.

It actually found a real bug in `fig/cli/main.py`.

For now it's ignoring two errors:
* E501 (line length) - There are lots of long lines and I didn't want this diff to be too large, but I could fix this in a followup branch if there is interest
* E203 (whitespace before characters) - because of how `DOCKER_CONFIG_HINTS` is foramtted in `fig/service.py`, also an easy change