Refactoring the ControllerActionDescriptorProvider

This change will remove IActionDiscoveryConventions, and merges the functionality contained therein into a new extensibility point that discovers and creates `ControllerModel` instances.

Perhaps add a line of comment that says these are consumed by the `IActionDescriptorProvider` which are singletons so these can be transient.