Collapsed some unecessary functions.
Moved 'node view model' to it's own 'class'.
Added tests for NodeViewModel.
Collapsed an unecessary function.
Moved 'chart view model' to its own 'class'.
Collapsed an unecessary function.
Added tests for ChartViewModel.
Moved 'connection view model' to its own 'class'.
Simplified a function.
Simplified a function.
Connection end points are now computed via functions.
Now creating new connection data model from connector data (rather than view models).
Each connector view model now references the parent node.
Connection end points are now computed based on the connector and node coordiates.
Moved fns to create new connections to the chart view model.
Moved deselectAllNodes to chart view model.
Moved updateNodeLocation to chart view model.
Refactored a function to make it less dependent on controller variables.
Renamed fn to make it less dependent on the behavior of the controller.
Renamed function that spelt wrong.