C# Object (Model) Validation library