In 2.2.x, the WS client is global, so changing the configuration for an instance is tough. The newClient method is package private to play:
I think you should be able to do instance configuration by calling:
val asyncHttpClient = WS.client
val originalConfig = asyncHttpClient.getConfig
val newConfig = new AsyncHttpClientConfig(originalConfig)
// add settings to newConfig
val newClient = new AsyncHttpClient(newConfig)
But there isn't a way to wrap the new client instance in back in a WSClient, because 2.2.x didn't have WSClient. In 2.3.x, you can create different WS client instances and provide different configuration.