LDEV-1241: Problem with progess engine getting stuck when a user is in a parallel activity within an optional activity and a force complete has occured. If the user selects the parallel activity after the force complete, the parallel activity is set to attempted, but the contained activities were left marked complete. So when the contained activities were "finished", they detected as complete and tried to forward the user to the current activity, which was the aforesaid parallel!
Now the code that sets an activity back to attempted will also check any completed child activities back to completed.