Add spark KMeans implementation