Abstact the runnig of the machine as series of steps(using the step function).
Relatively good condition for running the animation.
Explicitly ban the use of the graphical version with user input.