Replaced connection alignment constraints with springs.

The alignment constraints don't work well because they end up fighting each other far too much, pulling the graph in all directions. Springs play nicely together by compromising and aligning things to a middle ground. This is analogous to the hard/soft constraints we were using in the existing positionNode() and positionNodes() calls, so I'm hopeful that this new layout code will be capable of doing it all in the end.