added a 'StatelessEventHandler' trait. I'm experimenting with making a Surface a type of EventHandler