Only using explicit namespace when deserializing key pb.

This issue surfaced during review for #282.
Adding checks for namespace in datastore helpers test.

This is to ensure that values are correctly ignored when
the field isn't set on the protobuf.
Merge pull request #292 from dhermes/unmarshall-key-namespace

Only using explicit namespace when deserializing key pb.
Makes operator checking deterministic in Query.filter.

The order of dictionary keys is not guaranteed between runs of
code so `expression`s ending in '>=' or '<=' were sometimes
matching for '='.
Adding test to make sure the correct operators get set on filter.
Document that app code should not pass 'dataset_id' to 'Key.__init__'.

Only the 'helpers.key_from_protobuf' factory should pass it.

Fixes #293.
Using operator dict in datastore.query and splitting on whitespace.
Adding test for datastore.query.filter with no operator used.

This was to get test coverage back to 100%.
Elaborate on restrictions for 'Key._dataset_id'.

Incorporates feedback from @dhermes.
Merge pull request #294 from dhermes/query-operator-fix-dict-random-order

Makes operator checking deterministic in Query.filter.
Implements group_by, projection and offset on datastore Query.
Using native proto operations in Query to avoid data out-of-sync.

This applies to both projection() and order_by() getters using
data from the proto and using pb API method ClearFields in
the setters rather than mucking with pb internals.

Also adds a test for multiple calls to projection/group_by
settings to make sure data is cleared.
Re-order Connection's RPC methods to match protobuf spec.
Rename 'Connection.rollback_transaction' -> 'rollback'.

Makes it consistent w/ 'commit', as well as matching the protobuf RPC.
Implement 'allocate_ids' RPC on Connection.

Fixes #272.
PEP8 ws.
Merge pull request #282 from dhermes/implement-groupby-projection-offset

Implements group_by, projection and offset on datastore Query.
Remove notes about datetime.date objects and timezone matching.

Issues #278 and #279 have been filed to address.
Document regression tests, make run_regression fail if environ not set.
Adding support for queries in regression test.

This ports the gcloud-node regression tests for queries
over to gcloud-python.