printing: fix srepr of empty Matrix with nonzero dimension

`zeros(0, 3)`, `zeros(3, 0)`, and `zeros(0, 0)` all have srepr of
"MutableDenseMatrix([])".  This violates the "eval(srpr(expr)==expr"
idea.  Fix the ReprPrinter to instead produce
"MutableDenseMatrix(0, 3, [])" which is consistent with StrPrinter.

Add tests.
printing: srepr of empty Matrix: use .rows, .cols

oops, here is a nicer way
printing: srepr, clarify comment
Merge pull request #8215 from cbm755/srepr_empty_matrix

printing: fix srepr of empty Matrix with nonzero dimension