A testcase for seeing if C# can handle protocol restrictions in type-safe ways with fluent interfaces