CoordInterpGrid: specify location and scale of coordinates

This adds the ability to specify location and scale of an interpolation: see [discussion on mailing list](https://groups.google.com/d/msg/julia-users/RRf49A4jR3M/SGwLBTjEK2kJ).

One-dimensional usage simply requires specifying the range as first argument:
```
x = -1.0:0.1:1.0
z = sin(x)

cg = CoordInterpGrid(x,z,BCnil,InterpQuadratic)
```

Multi-dimensional the ranges are specified as a tuple
```
cg = CoordInterpGrid((x,y),z,BCnil,InterpQuadratic)
```
Gradient calculations are also supported via `valgrad`.