Throw a better exception when the user didn't add the MVC services

Issue #347 - Added a check in UseMvc() to verify if AddMvc() was called before.
Added functional tests for the same.
why? `Microsoft.AspNet.Mvc` this should be `Microsoft.AspNet.Mvc.Internal`