One more note elaborating on the details I added to TUSCANY-3819 along with my patch.
Rather than having every piece of the runtime now assume that an output would always come wrapped in an array of outputs, (since there are potentially multiple outputs), I chose to allow pieces of code like the MediatorImpl.copyXXX and the Output2OutputTransformer functions to handle either a single output or an array of outputs. I use the Operation.hasArrayWrappedOutput() to signify which case we're dealing with (defaults to false, i.e. a single, non-wrapped output). That seemed less disruptive, and obviously more along the lines of the approach we already had (using hasHolders()). Just thought I'd explain that since it's potentially a detail that will come up in many different contexts. Scott
