Best Practices ViewModel Validation in ASP.NET MVC