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.

I don't really think it matters does it? these values can't change because it would break the universe.

Mostly I don't want it sitting there like a turd in some public api