Implementation of the Multiplexing problem, as well as a new MultiKeyedCommand model and a SplittableCommand model

I just noticed this - we'll have to move childReply back in to the new anonymous MSet created below because the PendingReply's constructor receives a reference to the wrong Command ( the parent, instead of the Child )

n.b. i dont remember why it is receiving that reference at all but thats a different issue