AbstractGrid object removes a lot of duplicate code from grid and block objects