TODO: * Port over and improve clusterview and it's opengl stuff. It should use k-means point and cluster, as well as the math library from kmeans (add a test to dist). Additionally, the point and cluster of the clusterview should inherit from k-means point and cluster so that it can use the algorithm correctly. All other aspects of point and cluster in the clusterview program can be kept. * Extract and improve the overall structure of clusterview so that globals are not used unless absolutely necessary. * Turn kmeans into a python package and import it here. * Remove old clusterview buttons, keep the status window side and saving feature. Add new buttons for weighted and unweighted clustering. * Add a property to the point called weight, which is set when you click edit point. It will give a popup that allows you to specify a point weight. * Use kmeans to do the stuff. * Weighted cluster mean is rendered as a hollow circle and unweighted k-means mean is a x.