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