[newton] Reimplement timestep control
There are now two solve function overloads, on without timeLoop that does one newton run, and one with a timeloop that decreases the time step and tries again.
This makes the main file shorter and the newtoncontroller doesn't need a timeloop in the constructor anymore.