Representation of time and duration for events. When object can be in one of four formats (sub-objects):
When.Date
When.Datespan
When.Time
When.Timespan