second commit, UI mouse and keyboard control.