fix GridLayer to not reset if tile zoom didn't change
fix zoomPan logic, cleaner code