New endpoints, mocking utils, CircleCI, and Python 3 compatibility

We've been using this fork in production for a while, so I think it's good to merge. I've reviewed most of it (though clearly @chris-martin was the author).