I added additional logic to the cluster class to test if certain points are adjacent to other points, to generate the possible neighbor points and to add points from one cluster to another cluster.