YaxlDiff: split into functions

* do not match nodes that already have matched parents
YaxlDiff: implicitly match roots
YaxlDiff: do not match roots: we expect them to be mismatched so we can detect insertions/deletions
YaxlDiff: separate weight calculation