Need to use connected components on the symmetrized KNN graph; committing before I do a refractor to use sets instead of vectors for neighbor lists.