Document that app code should not pass 'dataset_id' to 'Key.__init__'.

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

Fixes #293.
Elaborate on restrictions for 'Key._dataset_id'.

Incorporates feedback from @dhermes.
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.
Note protobuf RPCs mapped by connection methods.

Remove section header comments, per @dhermes feedback.
Merge pull request #299 from tseaver/272-add-allocate_ids-rpc

Fix #272: add 'allocate_ids' RPC to connection
Merge pull request #297 from tseaver/293-clarify_key_datastore_id_parameter

Address #293:  document that app code should not pass 'dataset_id' to 'Key.__init__'.
Introducing custom pip install in tox to be used with cached wheels.

In addition:
- Removes used of "pip install" in Travis config with our custom
  pip install.
- Introducing tox environment "coveralls" to encourage all Python
  dependencies to be contained in "tox.ini".
- Puts LICENSE header back on update_docs.sh and cleaned up some
  bash long line / syntax with shellchecker.

See https://github.com/GoogleCloudPlatform/gcloud-python-wheels/pull/1#issuecomment-60648806
step 2 for context.
Removing overlap with tox.cover config in tox coveralls.