INTERFACE FOR RECTANGLES
----------------------------------------------------------------------
rectangle = Rectangle(x1, y1, x2, y2)   # bottom left, top right
rectangle = Rectangle(point1, point2)
rectangle = Rectangle()   # Rectangle(0, 0, 1, 1)
repr(rectangle)   # return string
hash(rectangle)
rectangle.copy()   # return rectangle
rectangle.center()   # return point
rectangle.area()
rectangle.make4()    # return four smaller rectangles
r1.cover(r2)           # return rectangle
r1.intersection(r2)    # return rectangle
rectangle.move(x, y)    # return new rectangle
rectangle.move(point)    # return new rectangle
r1 == r2, r1 != r2, r1 < r2, r1 <= r2, r1 > r2, r1 >= r2
point in rectangle   # return bool
segment in rectangle   # return bool
rectangle.is_square()   # return bool
rectangle.iterpoints()   # counterclockwise
rectangle.itersegments()   # segment.pt1 < segment.pt2
rectangle.itersegments_oriented()   # the face is on the right
rectangle.gnu()   # return gnuplot string
----------------------------------------------------------------------
EOF
