Initial Python 3 support - code runs, but half the tests either error or fail. Closes #7.