- cherry-picked commits from master to maintain good test coverage on this 1.x branch, and also keep consistency with master as much as possible. Many conflicts dealt with, and pymongo->datastore changes were omitted.
- test fixups
- 33 support newer pymongo
- 60 python 3 updates
- improvement + test coverage for a change back in kyle's Coverage commits (discovered when testing with a real app "sfpy")