If Dispatcher receives an event while it's dispatching to its sinks, it ...

...queues it up and then re-dispatches it later.

This potentially could solve a wide range of issues. I reverted the previous fix to #120, and this change appeared to fix it as well.