FIX #3566: redefine isfinite alias in sklearn

`npy_isfinite` from `npy_math.h` depends on the compiler used to build numpy. If we build scikit-learn with a different compiler (e.g. MSVC vs MinGW) this can cause link errors.

Therefore we redefine the isfinite macro in a scikit-learn specific header file.