HTTPASYNC-45: CachingHttpAsyncClient to override Future returned by the backend. Contributed by James Leigh <james at 3roundstones dot com>