The overlap of two rectangles (zero-sized when they do not touch).
intersect :: (a: Rect, b: Rect) -> Rect