Add code to harden error path when dispatching events.

There is a new config parameter XXX.max.failure.retry whose default value is to 3 and that will allow
to retry up that value retrying handlers for a specifc event.

Note that guava bus event swallows exceptions so that requires a little bit of hacking around to get it to work.