Add event creation library and implement in scheduler.

Hopefully my other comments convince you that the interface is a feature and not a bug.