support getting extents of multi-track files

adds deps of semigroups and semigroupoids.  They're required anyway for diagrams, just not explicitly.
minor cleanups
remove AffineSpace instance for TimeStamp (upstream)