a more natural (x,y,w,h) 4-tuple to handle.
inner implementation still only handles one dirty rectangle, but this way we can prepare supporting applictions for the future.