Added keyboard support.

Probably. I haven't tested it at all yet.