An event bus built to use compile time code generation over reflection