interface IImageRegion
{
// get whole image that the region refers to
public default Img image() { null; }
// smallest rectangle that all of the region's pixels are contained in
public Rect bounds();
public int numberOfPixels();
public Pt firstPixel();
public Iterator pixelIterator();
public bool contains(int x, int y);
}