Parsing of time strings.

Parse an Internet Message Format time string. For example: "Tue, 27 Sep 2016 06:36:55 -0700".

Parse an ISO 8601 time string. The optional calendar (=cal-isostd/time/calendar/cal-iso: calendar) argument can be given to interpret the date in a different calendar. If a time zone offset is given, the

2008-12-31               // just date
2009-W01-3               // week number and day
2008-366                 // day of the year

20081231, 2009W013, 2008366  // without dashes

2008-12-31T09            // with time part, use T or space
2008-12-31 09
2008-12-31T09:20:16.345  // with milliseconds (can be any fraction)
2008-12-30T24:00:00      // next day at midnight
20081231T092016.345      // without separators

2008-12-31T09Z           // UTC time zone (Z)
2008-12-31 09-07:00      // UTC-07:00 time zone
2008-12-31T09:20:16+0830 // UTC+08:30 time zone (without colon)

And also parses the ISO month dates (see cal-iso-monthstd/time/calendars/cal-iso-month: calendar):

2009-M01-03              // just month date
2009-M003                // month date with day of the year