HTTP::ResponseBody

This factors all of the concerns of processing the response body into a separate
HTTP::ResponseBody object. This is a *BREAKING* API change, but hopefully one
that results in both a better API and a cleaner, more maintainable codebase.

It also deletes the callback system, which is 1) unnecessary 2) getting in the
way of the refactor.

Redirects are presently broken and marked as pending.
Redirect handling fixups

Fixes issues in handling redirects arising from the HTTP::ResponseBody refactor