ADTs written in C# and some implementations of them as practice