Clean up the message capturing code.

We now don't go quiet unless we're without an interactive session.
Also, the whole capturing code was cleaned up considerably, now
avoiding a roundtrip through ert-runner-print for normal princ
behavior.