Slim down requirements.txt and split up into separate files.

This now [runs on Travis CI in just over 4 minutes](https://travis-ci.org/jezcope/oabutton-server/builds/14865342). The requirements have been split up into separate files under `requirements`:

* `requirements/core.txt` — stuff needed to run the server
* `requirements/dev.txt` — stuff needed to run the server and the tests
* `requirements/deploy.txt` — currently just `Fabric`
* `requirements.txt` — just points to `dev.txt` to reduce surprise for developers

Please test and let me know if anything's missing (I don't count 
@crankycoder: Is there anything that's needed in production (gunicorn?) that isn't in one of those?

Fixes #201.