Remove dispatchable from InputDevice and reorganise x11 input code
The dispatchable method in InputDevice was used to give the InputDeviceHub direct control over the wakeups from user input devices. Most libraries do not allow doing that on a per device level, so fulfilling that interface gets impractical.
Approved by PS Jenkins bot, Alexandros Frantzis.