ventana: Switch to tilemap grid
ventana: Parse and verify level ImageDescription field
ventana: Set level downsamples from magnification ratio
ventana: Add subtiling

Ventana does not resolve overlaps before downsampling, so we need to
split downsampled tiles into subtiles.  Since there are overlaps between
every pair of adjacent tiles, all levels have the same number of subtiles
in each direction.
grid: Improve vertical alignment of tile coordinate labels
ventana: Drop magnification from struct level
ventana: Verify consistent TIFF tile sizes across levels
ventana: Disable tile size hints

We will eventually place each subtile individually, so tile size hints
would be misleading.
ventana: Only draw tiles from scanned AOIs
ventana: Drop subtile_[wh] from struct level
ventana: Read tile alignment data into memory
ventana: Add weighted average of tile offsets to advances

to reduce the number of extra tiles that will need to be examined by the
tilemap grid at runtime.