Minimal scheduler with tests.
Use a ref for schedules.
Store complete reservations (maps) in schedules (not just the interval). Reservations may have extra keys.