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.
The point of this is to setup the mock to return nothing. `GetServiceOrNull()` calls `GetService(typeof(IEnumerable<T>))`