Types representing shapes.
A struct representing an axis-aligned rectangle. Two points are stored: the top left vertex, and the bottom right vertex.