Window management keyboard shortcuts

This push adds keyboard shortcuts for switching and creating new windows. This is something I find useful when using an external bluetooth keyboard.

The push also refactors out the keycode constants from TermKeyListener and improves the explanatory comment.