Added new timespan tool: AnnotatedTimespan.

Annotated timespans are exactly the same as normal timespans, but carry one
extra mutable instance variable. This is analogous to the now defunct
TimeInterval.
Harmonized AnnotatedTimespan with Timespan.