Basic direction-finding for key inputs.
Leaps and bounds on the interface!