CircularBuffer data structure implementation in C# with unit tests