FIX: Better prints on event failures

Ready for review. Can be tested e.g. by running an example with `raise RuntimeError` in `on_draw`.

Closes #350.
It will change if either of the two `__repr__`s change. Not sure if that's the case for timer events. However, it's *not* the case for timer-triggered `on_draw` events, which this PR was primarily designed to address.