Made it possible to change the layout options in any animation mode. The animation thread is now interruptible and stopAnimation will interrupt it.
Extracted most of the animation logic into the Animator class. The Animator is now a thread that will run all the time (so no new thread creation for each animation). It's created and injected by the Driver on the start.
The Interface can now be used while the animation is running.