A force directed graph algorithm in C#