1. Folded node selection logic in DragCanvas.OnMouseLeftButtonDown into StateMachine
2. Introduced StateMachine.State.DragSetup state (the one before it goes into NodeReposition
3. StateMachine now allows single/multiple node selection deselection