Issue-740: Limit the queue size in the default ThreadPool in the SimpleHttpClient

and fix the bug on the ```FutureRequestExecutionService``` (unexpected closing)
My thought is that the builder here is really a factory bean, that produces a bean and ultimately puts that into the context. So your builder could be changed to be `SimpleHttpClientFactoryBean`. 

I also would like the bean that is produced from `SimpleHttpClientFactoryBean` to have zero dependencies on other objects. The `SimpleHttpClientFactoryBean` should inject it with everything that it needs, primitive values if possible at all, and off it goes. This should reduce the coupling between the abstractions and also, would be compliant with the single responsibility principal, because a `SimpleHttpClientBuilder` really should not be building a Executor. That's not what it's building. So that detail needs to go away. What really should come out of the `SimpleHttpClientFactoryBean` (or the builder, etc) is a `SimpleHttpClient`. Nothing more.