Remove API::Response in favor of Faraday::Response

There are many good reasons for doing this:

1. The abstractions around the various bits from the Orchestrate API have to
differ based on the response type.  A request against, f.e,
`GET:/:collection/:keyname` should not return something that has f.e. a `count`
method.  The response body is the item.  Specific handlers can be created for
each of the request/response types that are tailored to that response.

2. The methods to access things on API::Response were IMO counter-intuitive and
went against every convention from every HTTP library I've ever worked with.
The status code is not part of the headers, and it is called "status" or
"status_code", not "code". Access to the headers and body should be direct.

3. When using different Faraday adapters, you might need to register callbacks.
Sure, we can provide ways to do this, but until we have a better idea of how
this will be used, I think it's better to just provide the raw Faraday
response.
Let Faraday parse incoming JSON responses
Let the client serialize JSON bodies