Number of tiles. Zero or negative yields a single column.
Container width ÷ height. A non-finite or
non-positive value (a container not yet laid out, which is what a jsdom
test and a first paint both hand over) falls back to a square, so the
result is always usable rather than NaN columns.
Pick the grid that best fills a container of aspect
containerAspect.