Better event manager, custom data, custom-bound object