Start adding UI and improve keyboard/mouse handlers