Improve error handling in gunzip handler.
Improve modularity and extensibility of the http sender.

This splits much of the functionality into several different methods, allowing
for subclasses to override various features more granularly.
Add initial version of upstream proxy sender.

Currently, the upstream proxy sender supports only basic authentication to the
upstream proxy (or no authentication.)