Initial checkin of KMeans implementation

Basic framework for KMeans implementation and code refactoring.
Hm, so I'm thinking a little more about this... it should certainly be shared across the several MLlib-based implementations, but it is kind of specific to these applications rather than something that is in the generic framework underneath. I might push this back into the -mllib module somewhere. Don't worry, do it if you like, I may do it later, etc.