drafted consolidateSpans, finished and tested makeFreeTimes