Start adding GUI controls and improve input handling for keyboard and mouse