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.
We may want to check for illegal values at some place in the pipeline. This is here so I don't forget. At present a negative value is legal. If we make it illegal I want this to fail.