Fix pickling of empty matrices
Fixing mistakenly de-activated unittests
Concerning #791: adding matrix.null() to check if shape is 0-by-0

Note that .empty() checks if any of the dimenions is zero
Concerning 791: product of empty matrices should be sparse
Concerning 791: binary operation with 0-by-0 is a no-op
Concerning 791: XFunction.call should retain the output dimensions, even if one of those dimensions is zero