Improved timezone support for .ics files

We've reworked our .ics file generator to use time zones instead of ZULU time.

A .ics file is used by the calendar apps when users add an event to their calendar. Before we were using ZULU time to indicate when an event was beginning and ending. The time format works great and is a standard, however, some calendar clients didn't convert the time to the user's local time - resulting in the users being confused.

With the time zone supported format, the start and end time is parsed as is, meaning if the event is set to begin at 9 am, 9 am is parsed directly along with the time zone for the event. That enables calendar apps to handle the time based on the time zone and show it in a better way to the end-users.