WIP: Client Agnostic

# DO NOT MERGE

Looking for preliminary review feedback before moving forward to fix all the tests.

This still reads the entirety of response bodies to `byte[]` rather than allowing for streaming. That will be fixed once this lands.

*TODO:*

 * [x] Test non-interface methods still work (e.g., `toString`, `hashCode`, etc.).
 * [x] Test parsing of interface method annotations, params, and callback/return type.
 * [x] Test `RequestBuilder` properly creating `Request` instances.
 * [x] `Request` through `ApacheClient` creates correct `HttpUriRequest`.
 * [x] `HttpResponse` through `ApacheClient` creates correct `Response`
 * [x] `Profiler` is called correctly (e.g., object is passed through, times, etc.).
 * [x] Sync/Async execution invokes executors properly.
 * [x] `Response` parsing by `RestHandler` to `RetrofitError` and valid success type.
 * [x] Relative paths must start with `/`.