Python 3 support using setuptools and 2to3

This PR implements Python3 support using setuptools and 2to3, based on #27. This approach avoids introducing the `six` dependency of #28 at the expense of moving to setuptools. Setuptools is pretty much standard now anyway so this is probably the preferred solution.

@ocefpaf - this includes your commit so you'll get credit. If you have any comments please feel free, otherwise this PR will be merged and #27 and #28 will be closed.