More UI work. Temporarily split out a new GridGraphTilePathCanvas class, that I will merge into GridGraphCanvas after the commonalities between the two are more apparent.