Add travis testing

Depends on #7

This patch sets up project to be able to test using tox on travis-ci.org using the github hook.
http://docs.travis-ci.com/user/getting-started/#Step-one%3A-Sign-in

The last commit should have a checkmark put there by travis.
The advantage of this is to be able to use unittests to avoid regressions on python2, 3 and pypy.
Coverage of unittests is added with a lower limit of 50% in hopes it will encourage inclusion of unittests.
There is also a test for generating the documentation.
A few tests which have been commented out: pylint and pep8 as the project is not following the style and it would cause the build to fail. They are there for consideration.

The inclusion of a Makefile means that each of these features can be used using the `make` command on Unix-like systems.
```bash
make clean-build  # remove build artifact
make clean-pyc  # remove Python file artifacts
make lint  # check style with flake8"
make test  # run tests quickly with the default Python
make test-all  # run tests on every Python version with tox
make coverage  # check code coverage quickly with the default Python
make docs  # generate Sphinx HTML documentation, including API docs
make release  # package and upload a release
make sdist  # package
```