Python 3 support

All tests are passing for Python 2 and 3 :)