Make bail safe for non-string inputs and uninitialized events

It was possible to bail on certain events before the 'client' and/or
'check' properties are initialized. In those cases you get a
stacktrace (over multiple lines) instead of the initial error message.

With this change you always get the error message that the handler sent.