I like the effort you took with the documentation. (There are some grammatical problems, but they can be addressed later and have been faithfully reproduced from `AssignsOutAndRefParameters`.) I think though, if we were going to go this way, we'd be better off following the lead of `IReturnValueConfiguration<T>` and `ReturnValueConfigurationExtensions`: the `AssignsOutAndRefParameters` here could be _replaced_ by `AssignsOutAndRefParametersLazily` and then we could provide convenience methods of which `AssignsOutAndRefParameters` would now be one) as extension methods.