ControlInterface and Core class, these control the program flow.