Add stop() and isRunning() methods to MessageOutput interface.

Create a OutputSetupService to stop all outputs once the buffers are
flushed.

Fixes #652
Fix LOG.error() usage to actually log the exception.