Reorganize and add setup.py

Closes #10. Makes another dent in #6.

Also adds the ability to automatically install dependencies via a setup.py
file. I'm not convinced this is better than a requirements.txt and pip -r
though, since I'm not sure it's even possible to turn this into an egg.
But if you really wanted to, you could pip install directly from the git
repository.
Merge pull request #39 from pao/topic/setup.py

Reorganize and add setup.py