exercise strict control over http requests

The request module uses a global pool and configuration for requests.
These changes exercise stricter control over how these requests behave
so that the module's use of http is consistent, regardless of http
requests other modules in the same process might be making.