Add experimental C# implementation.
Add more flexibility to clause use. Remove pre-context.