ENH: Add the scipy NumpyVersion class.

The class is in numpy/lib/_version.py and can be used to compare
numpy versions when the version goes to double digits.
ENH: avoid keyword arguments for some ufunc.reduce wrappers

PyArg_ParseTupleAndKeywords is pretty slow for keywords as it needs to
create python strings first. Using positional arguments avoids this and
gains 15-20% performance for small reductions.
TST: reduce memory usage of fft test

tests should not use more than 500 MB of memory, this one uses more than
a GB. Also it didn't join its threads.
Merge pull request #4186 from juliantaylor/reduce-opt

Improve small reduction performance
Merge pull request #4719 from juliantaylor/fft-test

TST: reduce memory usage of fft test
Merge pull request #4713 from charris/add-numpyversion

ENH: Add the scipy NumpyVersion class.