DOC: make docstrings of matrix properties (.T, .H, .I, .A, .A1) work.

Closes gh-1939.
BUG: Refactor nanfunctions to behave as agreed on for 1.9.

    Deal with subclasses of ndarray, like pandas.Series and matrix.

        Subclasses may not define the new keyword keepdims or deal
        gracefully with ufuncs in all their forms. This is solved by
        throwing the problem onto the np.sum, np.any, etc. functions
        that have ugly hacks to deal with the problem.

    Settle handling of all-nan slices.

        nanmax, nanmin -- Raise warning, return NaN for slice.
        nanargmax, nanargmin -- Raise ValueError.
        nansum -- Return 0 for slice.
        nanmean, nanvar, nanstd -- Raise warning, return NaN for slice.

    Make NaN functions work for scalar arguments.

        This may seem silly, but it removes a check for special cases.

    Update tests

        Deal with new all-nan handling.
        Test with matrix class as example of subclass without keepdims.
        Test with scalar arguments.

    Fix nanvar issue reported in #3860.

    Closes #3860 #3850
BUG: Make ndarray.{var, std} work for scalars.
DOC: fix signature of NpyIter_GetIterNext in capi doc
DOC: add highlights to release notes and rewrite and move some sections

closes gh-3842, gh-3843
BUG: ensure percentile has same output structure as in 1.8

percentile returned scalars and lists of arrays in 1.8
adapt new percentile to return scalar and arrays with q dimension first
for compatibility.
DOC: Tweak the 1.8.0 release notes.

Add the new nan functions and linear algebra gufuncs to highlights.
Tweak some rst formatting.
BUG: Include sunmath.h in npy_math.h when __SUNPRO_CC defined.

The include is needed for isinf.

Closes #3871.
TST: linalg: add more comprehensive test cases for linalg funcs

Also remove TestCase subclassing, so that generator tests work.  Also
fix bugs in the existing generator tests that were not actually run
previously.
BUG: linalg: use correct BLAS incx convention in xCOPY
BUG: linalg: fix eigvalsh return type (always real-valued)
MAINT: linalg: strip out unused gufuncs_linalg code

Some of the functions removed were untested, and apparently did not
function correctly (cholesky_up, inner1d, maybe more).
TST: linalg: add slightly bigger test case + don't catch KeyboardInterrupt
TST: linalg: better rtol choice
DOC: Update 1.8.0 release notes.

Order highlights by significance. This is a subjective judgement.
Mention the linalg enhancements and illustrate with an example.
Update memmap.py

Clarify `memmap` docstring to better reflect the meaning of *offset*.
BUG: Disable check for oldstyle classes in python3

Fixes gh-2561
TST: Regression test for gh-2561
TST: Raise AssertionError on failure
STY: pep8 for npyio

Various pep8 fixes for npyio.py
Also reorganized the imports, and removed the unnecessary (I hope)
`_string_like = _is_string_like` statement.