I think we want `AbstractHttpClient` here so that we support most `HttpClient` implementations (even `AndroidApacheClient`), right?