Add Python 3 support

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