Rebased fix replay

I have rebased (from current development branch) and reorganised my fixes and enhancements to the replay system, including putting some magic into the files so they can be identified more readily.  Hopefully these modifications and fixes can be adopted in their entirety, as they are interlinked - removing one step may clobber later ones...

This replaces #129 entirely and I will close that one now.
It should return nil and and a descriptive message in case of an issue, and true when it started playing.