Add a simple standalone Consonant web service based on Twisted

This web service supports communication with YAML only at this
point. The complete basic and transaction web API is covered.
Not supported yet are JSON communication, authnz, app-specific
hooks and the query API.

The service is based on Twisted's Site and Resource concepts but
does not make use of deferred request handling yet, which is
important for performance and scalability.

In addition to the Consonant specification, the service handles
/commits/:sha1/... URLs to access content in particular commits
rather than just /refs/:ref/... which only allows retrieving
content for the latest commit in a ref. /commit/:sha1/... URLs
should probably be added to the Consonant specification.
Add Twisted to dependencies in .travis.yml and README
Add optional memcached support to python-consonant-server
Add support for testing the web API using the test suite
Always install pep257 0.2.4 instead of an arbitrary version

There are quite a lot of changes in pep257 version 0.3.0. For
python-consonant to still pass the test suite we'd have to make
a lot of small changes here and there. I'd prefer to do this in
a dedicated pep257-fixes branch rather than here.
Merge branch 'jannispohlmann/yaml-web-service'

Signed-off-by: Jannis Pohlmann <jannis.pohlmann@codethink.co.uk>
Reviewed-by: Adam Coldrick <adam.coldrick@codethink.co.uk>