Add a Field model, refactor Client

* Add a `Field` model with an index action
* Rename `Client` --> `ResourceGateway`
* A `ResourceGateway` is associated with a particular resource and takes an `endpoint` and a `resource_name` as constructor arguments
This resource is located at `/profiles/fields`. A GET to that path returns a hash, a key of which is just "fields".

`endpoint` and `resource_name` will be identical for *most* models, but won't be in the general case.

This seems to be as close as this API gets to having nested resources. Looks like we won't have to deal with that messiness, anyway.