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

Docs written describing this here: https://github.com/pferrel/harness/wiki
Here and elsewhere. If compound closure, parenthesis could be ommitted 


     interactions.map { 
          case (rowID, columnID) =>
             val rowIndex = rowIDDictionary_bcast.value.get(rowID).get
...