MAHOUT-1464

The numNonZeroElementsPerColumn additions did not account for negative values, only counted the positive non-zero values. Fixed this in the in core and distributed case.

I added to Functions.java to create a Functions.notEqual. It may be possible to do this with the other functions but it wasn't obvious so I wrote one. The test is in MatrixOpsSuite, where is it used.

The distributed case was much simpler.

Changed tests to include negative values.
i mean, shouldn't this specialized version be more effective than an aggregate: 

    def apply(f: Vector): Double = f.getnumNonZeroElements().toDouble