Rich, declarative, custom events made easy!