TST: mark TestEig.test_singular as knownfail for 0.14.x.  See gh-2254.

Cherry-picked from d7025f5.
BUG: tools: Fix list of FMA instructions in detect_cpu_extensions_wine.py
DOC: stats: Add 'entropy' to the stats package-level documentation.
MAINT: tweak cython variables declarations to avoid the warning
'Non-trivial type declarators in shared declaration ...' that is
generated by cython 0.20.
MAINT: special: tweak the generated cython variable declarations in _ufuncs.pyx
to avoid the warning 'Non-trivial type declarators in shared declaration ...'
that is generated by cython 0.20.
GEN: special: regenerate _ufuncs.pyx
BUG: modified ClusterNode.pre_order() for non-root nodes.

Fixes gh-2177 by replacing the boolean vectors with sets.
TST: add test for subtree pre_order in cluster.hierarchy.

Tests that ``pre_order`` method works for subtree of ClusterNode root.
MAINT: minor PEP8, test docstring cleanup for previous test_hierarchy commit.
ENH: sparse/sparsetools: replace SWIG by manual wrappers
BLD: sparse: update sparsetools build
MAINT: update gitignore re sparsetools
ENH: sparse: split sparsetools to smaller compilation units
ENH: sparse/sparsetools: better autogenerated code + comment the code better
MAINT: sparsetools: delete unused files
BLD: sparse: fix sparsetools depends
BUG: sparse: fix const declarations in generate_sparsetools
BUG: sparse: strip out forgotten things from generate_sparsetools
DOC: sparse: fix inaccurate comment in sparsetools.cxx
BLD: sparse: check return value of generate_sparsetools.py on build time