[SPARK-2429] [MLlib] Hierarchical Implementation of KMeans

I want to add a divisive hierarchical clustering algorithm implementation to MLlib. I don't support distance metrics other Euclidean distance metric yet. It would be nice to support it at other issue.
Could you review it?

Thanks!

I changed the way to call `predict` at the python code, using Java API.

https://github.com/yu-iskw/spark/commit/8aa6a00f0dd53a5913be668a64332fc050314040