Simple, flexible and extendable validation framework for .NET