Specifically, adds DTSTAMP properties to all of the objects (the calendar and the events), terminates lines in CRLF, and splits the UID over 2 lines so the validator is happy with me.
Furthermore, we now have RECURRING EVENTS! This assumes all of the DJs are on weekly schedules (an assumption that ben claims to be correct). It uses the RRULE property to repeat each event weekly, and it always requests a full week of shows.
rebased, and I fixed the common schedule.php to allow for the trickery I'm doing in ics.php