Whether the bounds intersect another bounds.
bool intersects(Bounds other) { return left < other.right && right > other.left && top < other.bottom && bottom > other.top; }