Stepper for time evolution
In preparation for AMR and task parallelism (at least threading).
We can now evolve like
u0 = [0.5]
evo = Evolution( (du,u,t) -> du .= - 0.8 * u, u0, 0.05, 1.0, algorithm(:RK4) )
while !isdone(evo)
step!(evo)
end
u = evo.up1