[#3123] 1. Track Events dispatch trackeventselected/deselected after subscriber callbacks are executed first
2. Selected draggables don't duplicate, stopping that nasty crash when dragging an event
3. Track.deselectEvents now only sets the select state to false if an event is selected, reducing useless calls to all trackevents