Initial work on an event system.