ENH: inv/solve work with empty inner and others empty outer array

This makes the inverse of a 0x0 array simply be 0x0 again. It
also modifies the no-empty array check in favor of a no-empty
*inner* array, since the gufuncs seem to handle the other case
fine.
Merge pull request #3513 from seberg/0d-linalg

ENH: inv/solve work with empty inner and others empty outer array