Add Python 3 support

- use python-requests over pycurl
- generic changes to support python3
- fix tests to support python3