Fixes for redirection and client socket handling.

(This will be rebased and cleaned up, just a temporary fix)

- Prior to this, upstream sockets were not being checked for socket errors.
- Prior to this, upstream sockets were not writing data to the downstreams
  properly.
Extra logging for redirection responses.
Append X-Redirected-Via for redirected requests

If a request is redirected, the header X-Redirected-Via is added to the request
that goes to the host being redirected *to*. The value of this is currently the
name of the rule which was matched.
redirect cleanup and documentation
Release v2.0.17, see ChangeLog for details
Merge branch 'release/2.0.17' into develop