(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.
Agreed.  Added commit 137ae4b to restore the `redirect-test-async` tests, using a client to make the requests since the client-less single-request async APIs are no longer available.  Also wrapped a couple of Clojure clients tests with `with-open` around the client calls so that the client would be close even if the test were to throw an `Exception` and fail.