BUG:  Math on size_t is unsigned, so matrix.cpp:isZeroElem() was returning incorrect values.

This fix uses memcmp() and a reasonably large buffer of zeros for efficiency.