Add a trait uf.UnionFind
Add uf.WeightedQuickUnion