Now uses EulerTimer.
Now stops after a solution has been found.
Now uses EulerTimer.
Slightly more generic.
Now uses EulerTimer.