Adding support of ppc64le architecture

Signed-off-by: William Grant <wgrant@ubuntu.com>
Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
BUG: Ensure MaskedArray.flat can access single items
BLD: remove cython c source from git

Instead generate at build time. The generated sources are still part of
the sdist.
tools/cythonize.py is copied from SciPy with small changes to the
configuration.
ENH: add a 'return_counts=' keyword argument to `np.unique`

This PR adds a new keyword argument to `np.unique` that returns the
number of times each unique item comes up in the array. This allows
replacing a typical numpy construct:

    unq, _ = np.unique(a, return_inverse=True)
    unq_counts = np.bincount(_)

with a single line of code:

    unq, unq_counts = np.unique(a, return_counts=True)

As a plus, it runs faster, because it does not need the extra
operations required to produce `unique_inverse`.
Merge pull request #4589 from juliantaylor/cython-gen

BLD: remove cython c source from git
Merge pull request #4180 from jaimefrio/unique_counts

ENH: add a 'return_counts=' keyword argument to `np.unique`
Merge pull request #4551 from michelmno/master

ENH: adding ppc64le architecture support
Ensure single record items also work correctly with MaskedIterator; tests
Merge pull request #4585 from mhvk/ma/iterator-get-single-item

BUG: Ensure MaskedArray.flat can access single items