Added tests for ConnectionViewModel functions to compute positions and tangents.
Created separate fucntions for the calculation of the x and y components of the connection positions and tangents.
Seperated the tangent generation code out into fns for source and dest, x and y.
Fixed some issues with connection tangents.