less clutter on stdout
we don't need coverage for cStringIO fallback
test cache timeout
capture stdout and stderr in md.main test
md.main test in separate file & test a bad pipeline
allow PipeExceptions to stop the pipeline