Added auto generation of versioned schemas.

This commit adds a script scripts/generate_schemas.py which downloads
the schema definitions for a given release and converts these into
Python class definitions, which are written to a module private file
_protocol_definitions.py. These definitions are imported by protocol.py
and there is no user-visible change in how the protocol classes are
used.
Added Travis support for Python 2.7.
Now using Flask for routing; added metadata path to tabix bakend
home now 404s and requirements are abc123
Merge pull request #45 from hershman/flaskify-squash

Refactor Werkzeug requirement into flask
Merge remote-tracking branch 'upstream/master' into generate-schemas
Added clarification comments + pep8 fixes.
Update setup.py to prepare for pypi release.

Includes switching the minimum version of setuptools to 0.7.

This is still a fairly arbitrary line in the sand, but it's a very early one.
As/if we discover any issues with versions this old, we will increase the
minimum version.
Merge pull request #39 from jeromekelleher/generate-schemas

Generate schemas from Avro definitions
Merge pull request #42 from jeromekelleher/add-travis

Added Travis support for Python 2.7.
Merge pull request #43 from pashields/setuppy-fixmes

Update setup.py metadata fields