Changes to allow HTTPBuilder.client field to be any implementation of HttpClient

The current code restricts the HttpClient to be a descendant of AbstractHttpClient.  The newer versions of HttpClient have moved away from using this base class exclusively.

This code makes the code run with exceptions being thrown when the functionality of AbstractHttpClient is required.  Specifically this includes the "basic" and "oauth" methods on AuthConfig, and "setContentEncoding" in HTTPBuilder.

I would imagine it would be best to do something about both of these that can work with a generic HttpClient instead of a descendant of AbstractHttpClient but my use case used neither so I did not attempt it.