Restart replay without doing the exec() dance.

Instead, this change has replay restart itself "inline", by resetting
the state of the replay session (which also rewinds all the replay
files).  Then replay continues on normally with the newly reset
session.

#603