BUG: handle fill_value dtype checks correctly in RegularGridInterpolator

This fixes #3703 on my machine.

However, I tried to test this with numpy 1.5.1 (clean `virtualenv --no-site-packages`, `pip install numpy==1.5.1`, Scipy install), and I couldn't even import scipy.interpolate:

    Python 2.7.5+ (default, Feb 27 2014, 19:37:08) 
    [GCC 4.8.1] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import scipy.interpolate
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "scipy/interpolate/__init__.py", line 160, in <module>
        from .interpolate import *
      File "scipy/interpolate/interpolate.py", line 15, in <module>
        import scipy.special as spec
      File "scipy/special/__init__.py", line 558, in <module>
        from ._ufuncs import *
      File "numpy.pxd", line 155, in init scipy.special._ufuncs (scipy/special/_ufuncs.c:21825)
    ValueError: numpy.dtype has the wrong size, try recompiling

Apparently I'm doing something wrong here ...  If somebody could test this PR with numpy < 1.6 or help me resolve this issue it would be great.