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.
Mark it sealed. There's no utility in modifying this type.