This is all work of Marc Weber <marco-oweber@gmx.de>, except for a few nitpicks.
Tested space blowup: IMHO negligible to headers and similar stuff,
e.g. the firefox closure (reported by du) grows from 560 to 579 MB.
Saving space should be handled separately,
e.g. we have the multiple-outputs branch.