pubsub refactor

resolves #98

A good portion of this change is to the docs/ directory to support the addition of a module. In this case, PubSub will only be documented on the site once a release contains this pull. To support that, we have to generate the sidebar links dynamically based on the version of the docs the user is browsing.

Most of the changes to do that will likely come with https://github.com/ryanseys/gcloud-node/pull/1, which had the same demands (we are adding a new `Transaction` sub-module in that case).

So, feel free to zoom by those changes for now. Since this PR drastically changed just about everything, a diff won't be all that friendly of a way to view the changes. Feel free to use https://github.com/stephenplusplus/gcloud-node/tree/spp--pubsub-refactor/lib/pubsub to get a better sense of how everything works, as well as the test directory: https://github.com/stephenplusplus/gcloud-node/tree/spp--pubsub-refactor/test/pubsub
Should we mention that it's also an `EventEmitter`?