refactored AbstractEvenlyGriddedSurface to AbstractGriddedSurface bacause there is no requirement that it be evenly gridded