Graph Data Structure for C#