Add a struct for points and a class to handle the clustering