Adding comments/docstrings.
Replace pdb with NotImplementedError.
Moving the building of the GAE query out into a separate method.  Easier to read, and possibly we won't need to build the GAE query at all when filtering on PKs with additional filters, as the additional filtering will be done in python in that case.
Adding support for filtering on `pk__in` as well as other filters at the same time.
Tidy up imports.
Handling some edge cases in `_matches_filters` with datetime and Decimal types. Moving some utils functions out into a common utils.py module.