MAINT: attempt to improve svds of singular matrices, passes existing tests
MAINT: sparse svd passes new tests
MAINT: simplify code and tests for sparse singular svd
Merge pull request #3719 from argriffing/singular-svds-lm

BUG: sparse.linalg: address svds returning nans for zero input matrix