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
ENH: improve numpy.all()/any()

Unroll the loop once and use pminub/pmaxub to save a slow pmovmskb
instruction. Improves performance by 50% on some AMD chips.
Also add a pure libc path using memcmp and memchr for non amd64 systems.
The libc path can be faster with a very modern cpu and libc version,
e.g. an i7 with glibc 2.17 is about 20% faster than our code but many
other tested platforms are much slower (2.12 xeon, core2duo) or same
speed (2.17 phenom).
The numpy code can be removed in future when faster libc versions and
cpus are more commonly available.
Fix documentation description of loop spam in interactive interpreter
MAINT: remove unused and broken parts of numpy.testing

Deprecate np.testing.importall - it's pointless and partially broken.
Merge pull request #3597 from rgommers/testing-module-cleanup

MAINT: remove unused and broken parts of numpy.testing
Merge pull request #3596 from ecprice/a

Fix documentation description of loop spam in interactive interpreter
Merge pull request #3517 from juliantaylor/memchr-all-any

ENH: use memchr for unit stride all/any