protocol: introduce logical keyboards

fixes a bunch of problems:
* keyboards with different keymaps
* keyboard-input protocol kind of needs this
* multiplayer games on different keyboards

Signed-off-by: Sebastian Wick <sebastian@sebastianwick.net>
2 jobs for logical_keyboard in 1 minute and 18 seconds
latest
Status Name Job ID Coverage
  Build
passed build-native-autotools #1647927

00:01:18

passed build-native-meson #1647928

00:00:46