Remove a few extra HAVE_XKBs
keybindings: Don't bother not reloading keymaps for MappingModifier

Now that we always use XKB, it's very unlikely that we'll get a
MappingNotifier without a subsequence XkbKeymapNotify event. Just
do all the work always.

This will also help us considerably for the future when we'll be
putting the keymap event in the backend.
display: Move devirtualize_modifiers into keybindings

It's mostly only used here.
display: Simplify the regrab on focus mode
keybindings: Simplify a bit more code
keybindings: Move the button grabs to here as well
keybindings: Make devirtualize_modifiers a private function

This is now only used internally in keybindings.c
Remove support for the debugging window grabs feature

mutter doesn't really run nested in a useful way anymore.
window: Centralize the checks for the window grab modifiers

The code in the grab code was only checking for one of the modifiers to
be down, instead of all of them.
keybindings: Add an accessor for window grab modifiers

Since we're going to seal it away in the future.
keybindings: Seal off the keybindings manager into its own structure

This helps clean up MetaDisplay, and also helps us move it into a
backend-specific thing in the future.
keybindings: Add a helper for taking the standard three-button grab
backend-x11: Don't leak the keymap

meta_backend_get_keymap is supposed to return a static keymap, not a new
one every time. Cache it internally. We don't update it when the keymap
changes on the server, but we'll do this soon.
backend: Add a keymap-changed signal