replace guava's eventbusses with subclassed listenable async eventbus