Jsirois/sync/python 2

This syncs the python commons from Twitter to github. It drags in enough fixes to pants to handle these changes but no more and also includes enough fixes to get all of the following going green:

./build-support/python/clean.sh && ./pants
./pants tests/python/twitter/common:all
./pants tests/python/twitter/python:all
./pants goal clean-all
./pants goal test tests/{java,scala}/com/twitter/common::
Next up will be a jvm sync of Twitter changes to commons in a seperate pull request.
Finally will be a pants sync of Twitter changes in a 3rd and final pull request.