(in progress) WBEventsMixin

breaking up the PR