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.
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
Add instructions for running the unit tests to the README.txt file.
Merge pull request #49 from melaniedc/cleanup

Add instructions for running the unit tests to the README.txt file.
Include server subdirectory in dist
Merge pull request #51 from pashields/include-server-in-dist

Include server subdirectory in dist
Add a small unit test for the frontend.