Back ground -
The requirement is to when a document is ready, the user should be able to define the approvers and submit the document for approvals and all approvers must approve and if any approver rejects the whole request is rejected.
I have done this using Flexi task by enabling 'creating individual tasks for all group members' and behaviour as 'All must agree on a specific outcome' and outcomes as 'Accept and Reject' and included an 'Other' branch. Everything works great.
During the approval process, Before taking a decision (accept/reject) any approver should be able to add/update the document metadata field 'approvers' and of course end of the day all must approve. In the above scenario System should send an approval task for the new approver and in the workflow history they should be able to track all updated approvals.
I have achieved this using two workflows but I prefer to have only one so that the worklow history and task tracking is on one page and easy for document owners.