Open-sourcing Timeslottr: Create timeslots for scheduling

How do you generate scheduling timeslots, and what is surprisingly tricky about it?