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.
Should I add a constructor to `MvcRouteHandler` and handle this case there? Or would it be good enough if I handle this in `RouteAsync()` method?