only write to stdout in reporters

If you're still happy to take this, here's a rebased version of #1061 with the tests updated.

I guess either I didn't spot them or those tests were added after my branch!