This function works in two stages. First, it orders the SNVs in the window, based on age
for compatible SNVs and proximity to the focal SNV for incompatible SNVs.
Then, it makes the perfect phylogeny for the ordered SNVs using recursive partitioning and records
the partitioning.