Moved presentation logic out of process, into mainLoop