fix: no retransform if args don't change
grid stuff

* move gfx.graphics.util.Grid to util
* write util.Grid.tile_rects()
* write gfx.graphics.*Grid
* write util.InfiniteGrid
* remove Graphic.tint_mode
* GM.orig_sz -> GM.orig_size