Move 'bucket.BucketIterator' -> 'connection._BucketIterator'.

Rename to indicate the iterator is an implementation detail of 'Connection'.
Unneeded shim.
Move 'key._KeyIterator' -> 'bucket._KeyIterator'.

The iterator is an implementation detail of 'Bucket'.
Quote 'key.name' properly when used in URL path / query string.

Fixes #354.
Consistent dict literal formatting.

What did Emerson know, anyway?
Merge pull request #358 from tseaver/refactor-move_bucket_iterator_to_connection

Move 'bucket.BucketIterator' -> 'connection._BucketIterator'.
Merge pull request #364 from tseaver/354-support_slash_in_key_names

Fix #354: support slash in key names
Spurious parameter.
More idiomatic use of '__iter__'.
Add 'Bucket.iterator' method.

Exposes additional paramters for narrowing / batching key search.

Fixes #26.
Capture 'prefixes' returned in iterator response.
Update TestStorageListFiles regression to use 'bucket.iterator'.

See: https://github.com/GoogleCloudPlatform/gcloud-python/pull/359#issuecomment-62643880
Merge pull request #359 from tseaver/26-expose_bucket_iterator_w_extra_params

Fix #26: expose bucket iterator w extra params
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