Do not lose the exitcodes by using "tee".  We'll figure out how
to implement logs later (I do not think anyone has read them much
quite yet).
"set -e" is broken by design in all /bin/sh and all its derivatives,
do return explicitly from the relevant function in case of error.