Data annotation based object mapper for C#