Keep requirements in setup instead of txt file
Add partial compatability for python 3

address #24 on github

This pull request covers the low hanging fixes for migrating to python 3.

Unfortunately, adding seamless support for python 3 will be difficult because there are nontrivial differences between how StringIO, CSV and strings interact. In order to truly support python 3, there will have to be whole sections of code that are only used by certain versisions.