MAHOUT-1541

Not ready for merge, just looking for a checkpoint review. The code works and I'm reasonable happy with it. It needs review for:
* Design: will it be flexible, are there better ways to organize the code?
* Scala usage: I'm pretty new to Scala. 
* Package structure: no clue here so its all in "drivers"

Please don't take the tests too seriously and some things are not implemented. I'd like a once over before I do a bunch of test cases and finish polishing up.

This will close three tickets when complete. MAHOUT-1541, MAHOUT-1568, and MAHOUT-1569