New Timing interface
Update tests to use iterationDuration in place of duration
Simplify cloning of timing
Make Timing mutable and calculated properties on TimedItem read only
wip
Use null internally for linear timing. Handle special cases in iterationCount, iterationDuration and activeDuration
Rename TimedItem.timing to specified
Clean up preset timing functions