Added support for setting CredentialProvider when building HttpClient.

This will allow us to provide credentials, e.g:
``` java
    @Override
    public void run(Configuration configuration, Environment environment) throws Exception {
        BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
        credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials("username", "password"));
        HttpClient httpClient = new HttpClientBuilder(environment).using(configuration.getHttpClientConfiguration()).using(credentialsProvider).build("httpClient");
        environment.jersey().register(new MyResource(httpClient));
    }
```

Could you please move this into `setStrategiesForClient` and only set the credentials provider if `credentialsProvider` is not `null`?

While the latter is currently the default behaviour of Apache HttpClient, it might change in the future and we don't want to get NPEs all of a sudden. :wink: