Change control key handling, extend remap key syntax, allow remaps for C-[ / I / J / M

These commits change a couple of things.

First and foremost, they change the input machinery so that input keys are no longer ambigous: the Enter key is seen as RETURN, Control + J is seen as C-J and all other codes can be seen as Control + <i>alpha-char</i> instead of some escape code.

The other thing is that I moved the key recognition of C-J and so on to the `DefaultEditorAdapter` and the `KeyStrokeTranslator`. This happens only after the keymap is checked for any remaps, allowing the user to override the keys, but it happens before checking the current mode's maps keeping them the same for all modes.

Last up is a change in the "special key" parser, creative combinations like A-S-x should now be supported. C-S-x won't work yet though, as that would need a change in `SimpleKeyStroke` to compare the shift key in some other cases as well.

All of this fixes #281and #285.