multiplex output

All output is now also put into output/log.txt in addition to the
screen.

Some error messages are now only printed on processor 0 instead of on
every processor.

The header should be printed in case of early failure (for example no
prm given), but also piped into the output file. For that reason it now
lives in global.h. Update the version script to find the version info.
update changes.h
Merge pull request #103 from tjhei/multiplex_output

multiplex output