Add flake8 to TravisCI config

I added [flake8](http://flake8.readthedocs.org/) as another TravisCI step in order to perform some additional code checks like pep8, pyflakes and - not yet enabled here - McCabe complexity.

The current configuration is simple and straightforward. Only E501, which denotes the "line too long" error, is currently ignored. Additional [errors and warnings](http://flake8.readthedocs.org/en/2.0/warnings.html) could be added if required. Other interesting options could be `max-line-length` and `max-complexity`. For more useful stuff flake8 provides, like git hooks and so on, please see the documentation: http://flake8.readthedocs.org

-----
Note: With the current configuration, the build actually errors. This is due to the wild import in figo/__init__.py and from my point of view a potential code smell. Either all of the required imports could be done explicitly or maybe the content of figo.py could be moved into \__init__.py. I think the latter should be favored e.g. in order to prevent import confusions ("Does `import figo` import the package or the module?") in the long run.