ENH: interpolate: add the rescale argument to griddata and NearestNDInterpolator

When it was added to the linear and cubic nd interpolators, the
nearest-neighbor one and griddata() were missed.

Also, refactor NDInterpolatorBase to avoid some work that is unnecessary
in the nearest neighbor interpolator.
quick hack for fast CSC hstacking
ENH: adding fast-path for compressed hstack/vstack
using @pv's suggestion for more speed
adding fast-path checks to bmat
bmat case bug fixes
removing special cases for vstack/hstack

The performance gain isn't that significant (vs the bmat fast-path
detection)
BUG: sparse/bmat: use a safer csr/csc check

Also make the `axis` argument less confusing to read.
Merge pull request #3057 from perimosocordiae/patch-1

ENH: sparse: fast paths for hstack/vstack with csc/csr matrices

Roughly 5-10x speed-up for vstacking CSR and hstacking CSC format matrices.
Merge pull request #2979 from pv/rescale-griddata

ENH: interpolate: add the rescale argument to griddata and NearestNDInterpolator