added topographic k-means and also test functions