fix an oos error.

added new attibute "dependent" for none alonestanding commands in replay like user choices or checksum checks.
this should fix a oos bug that happend on undoing recruits in debug mode because in that case replay::undo only removes the checksum check after and not the recruit command.

unlike "async" command which are alonestanding commands that might depend on other commands, "dependent" commands have a 'parent' which is the first command before them, and shall always be deleted when the 'parent' is deleted.