Maintaining region -> class list. The starting point is checked
in case this crosses a deleted edge. A region to start coordinate
map could be maintained. Later regions could be contained in
holes of other regions. A hole can be a disjoint union of
polygons in general. This means that the defining characteristic
of a hole is a surrounded union of regions, bounded everywhere
by the same region.

Can make a list of potential holes: these occur when
at [r, c] the top class equals myCls and the leftclass
is defined and different from myCls. The starting point
and outer region should be noted.

These can be (should be) traversed in counter clockwise order.
It requires a kind of second pass.

But then the shapefile data structures might as well be constructed
in memory.