Add 'exclude_from_indexes' method to Entity.

Set it via ctor argument.

Pass it to 'Connection.save_entity'.

Fields in the sequence will have the 'indexed' field set False in the
corrsponding protobuf.

Fixes #83.
Expose 'exclude_from_indexes' via 'Dataset.entity()'.

Incorporates feedback from @dhermes.
Avoid mandating type of field names passed to 'exclude_from_indexes'.

Incorporates feedback from @dhermes.
Refactoring duplicate code between storage.key and storage.bucket.
Fixing lint error in storage._helpers.
Removing ACLMetadataMixin and unused ACL_CLASS.

Also removing make_public() from base mixin class.
Per review feedback from @tseaver.
Merge pull request #330 from tseaver/83-expose_entity_indexed

Fix #83:  Add 'exclude_from_indexes' method to Entity.
Merge pull request #333 from dhermes/refactor-key-bucket-shared-code

Refactoring duplicate code between storage.key and storage.bucket.
Ideas commit for better (implicit) auth story in datastore.

Also
- Integrates this idea into the datastore regression tests.
- Creates a (temporarily ignored) cyclic import
- Has an uncovered statement that confuses nosetests
- Implements a friendlier (more gcloud-node like) version of
  allocated_ids
- DOES NOT update CONTRIBUTING to explain change to regression
  tests or ditch unneeded helper / environ code for regressions
- Creates a datastore cleanup script for when tests get
  broken