Returns true if this overlaps with other.
true
other
bool overlapsWith(Period other) { return (contains(other.start) || contains(other.end)) || (other.contains(start) || other.contains(end)); }