timeline: Implement snapping to markers
This PR adds the ability to snap moving objects to markers from marker-lists present on nearby sources.
Adds a snappable
flag to GESMarkerList
, used to mark lists which we want to take into account during the snapping process (there can be multiple lists per source).
Also implements ges_marker_list_get_closest()
needed for the snapping system to pick a marker closest to a given timestamp.