In the old applet based physlets there was a step(forward) and a stepback routine. I am missing that to a certain extend in EJsS.
If a user doesn't hit the run/pause button in time and the simulation has advanced beyond that point, there doesn't seem to be a possiblity to go back one step.
Maybe there is and I just haven't discovered it yet.
I have written lots of Physlets during he last ten years. When I started it was like learning how to ride a bike, in the end I got to know how to drive a big truck ;-) Now my aim is ocean liner but I am afraid I am still at rowing boat level ;-)
What we did in Physlets was to set dt = - dt and then perform a single evolution step using the ODE solver or the analytic solution. You can do more of less the same in the JavaScript version of EJS provided the the Evolution code is reversible.