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.

If these aren't necessarily all attributes, should this be called `metadata` \ actionMetadata` instead?