Update Http handling for authentication and proxy configuration

Modified http handling so that:

* proxies can be configured in config.yaml
* webpage credentials can be configured in config.yaml
* Keystore for custom trusted certificates can be configured in config.yaml

This was fairly complex because the underlying http handling needed to be significantly modified.  However the advantage is that we now have very find control over all aspects of http requests.  And the http processors also have this level of control.