This will be used by next commits to make some code more legible.
GcalRange is a new structure that represents a time range. It is always inclusive at the start, and exclusive at the end.