Also spent 4 hours troubleshooting to find out I didn't realise how useCallback works... :/
Anway, not much longer before work on just the mappings can begin.
Store is functioning as expected, adding new layouts should be trivial and easily scalable.
Implementation is different for each function that uses the keyboard (PasteModal vs Typing in the WebRTC window) these will all require their own testing.