Implement an interface consuming and returning the same interface in C#