Function to be called with input events. Keyboard, mouse, and joystick events are represented as 'event lists' of the form:

(STRING . MODIFIERS)

where STRING is a string representing the key or button, and MODIFIERS is a list of key modifier symbols like :shift, :control, :alt, and so on.

The modifier list is sorted; thus, events can be compared for equality with `equal' and used as hashtable keys.