http_loader: Don't tail-call for redirects

Serving suggestion: git show -w

Fixes #1325.

Some of the control-flow reorganization is for clarity rather than out of
necessity.