Fix backends and vhosts example

Submitted by:       nublaii via github
Report VFPs in panics
Now that HTTP/2 seems to have confirmed they will not make Content-Length
part of the transport protocol (don't even get me started!) we need to
lift it out of HTTP/1 space and into the RFC processing.
Make it possible to push VFPs both on top and bottom of the stack
and put the V1F VFPs after all the gzip/esi etc. have been pushed.
Sort the list of build requirements.
Update list of documented build requirements.

The list of documented build requirement have not been updated
for a while, and was outdated.

Update the lists with recent data.

Added (commented-out) commands that extracts and formats
this information directly from the packaging files.

Reported by:	frakt
Make this less magical and more readable.
Introduce VFP_NULL as a possible return from vfp->init() to mean "ignore me".
Filter the list and add forgotten python-sphinx.

We only need debhelper when building the debian packages,
and the systemd-units is within a conditional that awk ignores.

Updated the commands to not include these in the future, and also
the Redhat spec file so it should work on a fresh installation.

Noticed by:	fgs
Readline does not belong on this list.

This reflects the debian build files, editline will suffice.
Open the VFP pipe before we start streaming, and change the open
order to bottom up, so that header modifications happen in the
sensible order.
Don't call any VFP->fini until we call all VFP->fini, and always call
it, no matter what.
Make sure to not leak memory, even when we're out of it.
Don't emit output duing init/open
Run VFP open before beresp->obj copy
Move the header-munging to the VFP's that require it.