[TEST] Expose ability to provide http headers when sending requests in our REST tests

`ElasticsearchRestTests` has now a `restClientSettings` method that can be overriden to provide headers as settings (similarly to what we do with transport client). Those headers will be sent together with every REST requests within the tests.
good point, I'll change the order to this: `RestSpec restSpec, Settings settings, InetSocketAddress[] addresses`. I think it's more intuitive since the first two args are final while `addresses` isn't.

I'll also try to come up with another PR to fix these mutability issues in RestClient...