As an alternative to building out comprehensive scheduling, what about just supporting remote pause/resume (like via HTTP request or something) so that an external source can manage the scheduling and just tell 24/7 TimeLapse when to pause taking photos and when to resume? I do this with my other webcams using server software I wrote that takes into account local sunrise and sunset times so that they're not taking photos at night.