Part 5: Summarizing tree topologies

In this part, you will learn how to summarize trees in terms of their component splits. A Split class will store the set of leaves that are above a given node. A tree topology can be identified by the set of splits it contains. A tree ID is thus a set of splits in a tree, and all trees with identical tree IDs have identical topologies. By the end of this section, your program will read a tree file and report all unique tree topologies and the number of trees having each topology.