REACH-92 Wrong positions of nodes after opening a file

Description of the bug is here: http://adsk-oss.myjetbrains.com/youtrack/issue/REACH-92

The solution suggested in this PR is to update nodes' positions right before saving a workspace. Flood sends `UpdateCoordinatesMessage` with current positions of nodes before sending `FileSaveMessage`, Dynamo processes this message and updates nodes in a specified workspace.

We cannot use corresponding `RecordableCommand` (`DragSelectionCommand`) because it's implemented to do all proper actions only in view.
Just a shortage:
return definition == null ? null : definition.WorkspaceModel;