Allow willMergeObjectWithLabel to change an objects label

willMergeObjectWithLabel only allowed for returning a label that existed
 in the destination serialization if the objects were the same.
This generalizes this delegate method and allows it to return a completely
new label to use when merging the object.