Refactor configuration (and everything else)

Because it stores its configuration in a singleton, the Namely gem can't be used to connect to more than one account simultaneously. This branch fixes that by making a bunch of *non-backwards-compatible* changes.

* Remove the singleton configuration block; instead, use a `Namely::Connection`
* Replace `RestfulModel` with `Collection` (no more class methods!)
* Every instance of a resource is just a `Model`—no more subclassing from `RestfulModel`
* `Authenticator#current_user` returns a `Model`
* Profiles can no longer be updated: this is due to a bug in the API, and should be fixed shortly
* Update documentation
The `Connection` and `Collection` specs seem a little too disconnected: here we test that we get `Namely::Collection` instances, and the `Namely::Collection` we test that properly configured collections work, but there's nothing to test that the `Namely::Connection` is returning the correct `Namely::Collection` instances, or that they're properly configured.

I think it might make more sense to move the current `Namely::Collection` specs to an `integration_spec.rb` (or similar), but modify them slightly to access the various collections through a `Namely::Connection`, and the write more traditional unit specs for the `Namely::Collection` that directly test return values and interactions with collaborators.