Added IO functions for study
Implemented D Mode

Moved some path processing functions from SingleReferenceFrameOperator
to path processing
Implemented I and DI modes
Allowed time slider to be grabbed and moved by panning.

Sliders can now be grabbed by panning on the time control.
If the touch is near a tick mark, the tickmark is grabbed instead.
added initial implementation for touch tickmarks' activity bars
Bug fixes

- Fixed bug where double tapping a tick mark crashes the application
- Fixed bug where insert key is always on for all modes.
Gesture Feedbacks now appear on the location of the gesture

Shows on left side if tap is on the left, right is tap is on the right
Initial implementation of new time control design.

This time control has a line to denote the current time.
Moved panning codes to slider control buttons and some bug fixes

- Fixed bug where time's position relative to touch is shifted to
towards the right of the touch
- Fixed bug where touch does not end properly, causing interactions to
jump.
Removed panning interaction from arrow buttons. Brought back swiping and prev/next frame
Shifted most button time function codes to forward/back button. Removed infinite time extension while controlling markers
Changed time tick and activity bar colors
Bug fixes

Fixed bug where initial pen color was initialised wrongly.
Fixed bug where widget's position did not get updated after a time tick
interaction
Implemented caching during transition
Bug fix

Fixed bug where scale used rotation's points for computation
Bug fix for demonstration crashing application when there are no keys at the end.
Fixed bug causing transforms to lose sync with motion paths
Fixed bug causing motion paths to be visible on load
Updated tickmark color to give interpolation mode more contrast between selected/unselected.
Motion paths hidden during demo, visible during interpolation.