implement dissected version of mergeForest

This way we can run it stepwise and illustrate the intermediate states.