/**
Base class for input devices. Input devices have two types of controls:
buttons and axes. Buttons are either on or off. Axes have a floating point
-value in the range [-1, 1].
+value nominally in the range [-1, 1].
Event handlers return a boolean indicating whether the event is considered
processed. If a handler returns true, no further handlers are invoked.