Bug 1078520 - python client

Implement a python client.  Note to reviewers, there were a couple fairly substantial changes to the way the module in the latest commits.  It's probably best to only really look at the most recent code.
agreed, my only concern is that if we change the policy server-side, it forces us to update and publish two client libraries and all consumers of those libraries.  Maybe just a log.warn and let the person go through with it?  I don't have strong feelings on this.