Well, what I like about johndh's approach is that it can simplify the interface. For a given <skill>, we can specify that it requires more than one participant in executing that skill. But we would still need a framework to execute joint skills, that would cause the interruption of any participant to _fill_in_the_blank_, most probably just interrupt the skill for each, thus canceling the current command. But for a "merge" command to work, it's like a morph that kills the second unit once it completes? There are questions left like how many kills should the resulting unit have? The greater of the two input units, a sum of their kills or an average?
gameboy, if you want this feature, please file an enhancement bug report (bugs.codemonger.org). It also might not hurt to file a separate one for adding the more generic "group skill execution" support. Bug reports keep good ideas from getting lost