redesigned storage of collections in C#