We should expose the possibility to specify multiple time windows per location.
Use-case: you can service a location between 9am--11am and between 1pm--3pm.
Implementation:
- Sort intervals per location by start then stop, assert for non-overlapping
- Take the min and max and set
CumulVar(n)->SetRange(minStart, maxStop)
- Walk over adjacent intervals and remove in between
CumulVar(n)->RemoveInterval(stop, start).