xgb: listen to KeymapNotify events

To keep downKeys in sync in the face of focus changes, we
must act on KeymapNotify events.

KeymapNotify gives us a bitmask indicating which keycodes
are depressed when we regain focus. The first 8 keycodes
are skipped, presumably reserved for the modifiers.

(compared to the previous pull request, this one also sends a proper KeyDownEvent instead of a raw KeyEvent)