Update demo to use new event system