timeline: Set the snapping distance when a project is loaded

Otherwise we could end up with no snapping distance set, and this no
snapping happening in the timeline.
Expect ASYNC_DONE after commiting

And make sure no seek is launch meanwhile otherwise bad things can
happen
Commit the timeline when removing a layer
undo: Properly make remove layer undoable

And make sure to wait for ASYNC_DONE before commiting timeline
when undoing actions
undo: Always commit the timeline on Clip property change when undoing

Otherwise the timeline won't be updated and the user will not see any
change from the undone/redone action
pipeline: No need to flush pipeline when PLAYING

Flushing is just to make sure that a frame is produced with the new
pipeline configuration, when we are playing we are already sure that
will happen so no need to force that again
titleeditor: Do not flush pipeline when setting default values

Otherwize we might be flushing the pipeline before it even prerolled