Move KeyPress into wiCore, it'll be needed there.
Add support for callbacks.

It will simplify pipelining commands.