Merge two leftist trees
Merge two leftist trees.
Two leftist trees are merged by "merging their right spines as you would merge two sorted lists, and then swapping the children of nodes along this path as necessary to restore the leftist property." (Okasaki)