Implements group_by, projection and offset on datastore Query.

In addition, `__eq__` was implemented on datastore.key.Key to allow for easy comparison.

See #281 for some context. As mentioned there, I looked and didn't see any equivalent bugs for these features.
Good call. It hadn't occurred to me.

How will that impact `_cursor` and `_namespace`?