A lot of Python and HTML and CSS cleanups, new docs, gitignore, requirements

Would be great if Travis could run all the unittests and the integration-tests to ensure that after all these changes nothing stopped working.