Move ValueProviders to MvcOptions

Fixes #778
Is there a reason to deviate from the pattern here? (using descriptor to represent an activated type or instance)