[wip] Update Identity v2

This is a consistency pass, by which I mean "rewrite", of the v2 Identity service.

Fixes #214.

### Remaining Work

- [x] Extentions resource.
- [x] Move the service catalog into the `tokens` resource.
- [ ] Unit testing!
 - [ ] Token creation, including all of the failure cases.
 - [ ] Tenant listing.
 - [ ] Extensions.
- [ ] Update the openstack provider client to match.
- [ ] Delete the old, flat implementation.
Yeah, I noticed that  :/