docs(README): bunch of rewritings

* re-organized auth section
* added basic snippets for datastore and storage
* improved some links
* removed pubsub
docs(README): fix typo and dataset snippet
Use Connection.requester and rename req to request for clarity
Clean up contributing
npm: slim down distributed files.
connection: use process.nextTick
and by nextTick, I mean setImmediate.
Merge pull request #159 from ryanseys/clean-contributing

docs: Clean up contributing
Merge pull request #147 from stephenplusplus/master

npm: slim down distributed files.
Merge pull request #149 from silvolu/master

docs(README): bunch of rewritings
Merge pull request #158 from ryanseys/use-requester

Use Connection.requester and rename req to request for clarity
Merge pull request #166 from stephenplusplus/nexttick

connection: use setImmediate to simulate async.
storage: fix credentials issue.

Previously, if a user wanted to generate a signed URL, there was
no guarantee a credentials object would have already been
generated. By itself, generating a signed URL doesn't require a
network connection, thus the uncertainty that we would have
already fetched a token. This change requires a valid credentials
object to exist before returning the `credentials` object.