First attempt at https://gna.org/bugs/?9354 , create single move option in replay mode

I've been trying my hand at this for some while, but I've hit a sort of wall here. I've created this pull request to show the work I've done so far, and to ask for advice on how to tackle the issue further, if someone has the time and patience to help me out a bit here.

To show what I've tried, I've altered the behavior of 'play side' button, to play only a single move, (treats only "move" or "recruit"). It works for a while, but the thing is, after a few iterations, the replay breaks, saying it is corrupt. 

I suspect I am not treating the actions exhaustively, but I've also seen that the return values of do_replay_handle() are used in playturn.cpp, in turn_info::replay_to_process_data_result, to return some other specific flags (PROCESS_CONTIN|UE, PROCESS_FOUND_DEPENDENT) . I'd like to know how those return values are used more exactly, and what exactly the implications of adding another option are(RETURN_FOUND_END_MOVE I called it there).

The way this mechanism works is a bit foggy for me right now, if someone could please give me some hints on the matter so I know what approach I should take next, I would be very grateful.