historynodes now returns oldnode and newnode, and not the reverse
some other predicates take care of matching nodes based on the type they declare, and find differences between nodes