(TK-103) Rework client close and remove support for "single request" async APIs

This PR contains two major changes:

1) Reworked how close is called on a `CloseableHttpAsyncClient` after a synchronous "single request" -- a request without the caller having to manage a client instance -- has completed. This removes the temporary workaround done in TK-101 - #21 - to handle client closing.

2) Rather than rework the asynchronous "single request" API with a better "close" implementation, this PR removes the asynchronous "single request" API completely. It is believed that these API was not in use anyway in that async consumers would more likely have already been using the "with-client" API at the Clojure level.
This change didn't strictly need to be done as part of this ticket.  I didn't see any file descriptor leaks related to not closing the response body stream at this point, but there did still seem to be the possibility of a memory leak.  Also, the Clojure-level implementation uses `slurp` for the coercion to `String` and `slurp` automatically closes the stream.  This change, then, brings the Java implementation in line with the Clojure one.