WIP: More work porting to Python 3 with single codebase / six

We are currently sprinting on fixing the Python 3 support.

Please feel free to review as we go.