use internal key auto repeat instead of X's

The idea is that the X key repeat settings have a major influence on
user experience, and that the default settings are often not good. We
require a low delay and high repeat rate to make seeking controls appear
nice and snappy, but also for panscan control etc.

Other GUI backends should be unaffected (commenting the line that sets
no_autorepeat should give the old behavior even with X).

Suggested defaults (actual defaults are left untouched for now):
 -input ar-delay=200:ar-rate=40
debugging printfs
input: reduce amount of tracked keys per binding

There's no need for key bindings that consist of 32 keys held down. It's
ridiculous and wastes memory.
input: don't let multi-key bindings block simple key bindings

Key bindings can include mutiple keys at once (additional to key
modifiers like ctrl etc.). This becomes annoying when quickly switching
between two bound keys, e.g. when seeking back and forth, you might end
up hitting the "left" and "right" keys at once. The user doesn't expect
to invoke the key binding "left-right", but would prefer a key stroke to
invoke the binding it was supposed to invoke.

So if there's no binding for a multi-key combination, try to find a
binding for the key last held down. This preserves the ability to define
multi-key combinations, while the common case works as expected.