Added event handling, more buttons, simple
movement test app, dt parameter to update
Slight refactoring of ButtonEvent, and added mode cycling via 'select' button