This grid forms a graph. Ugly represented, but a graph.
Variable names are good btw.
Variable names are good btw.
I also think it's bad to require explicitness when something's obvious - like if you have an array of `cats` then naming its iterator variable `cat` is a waste.