Would be nice if this could handle something like: ``` [Clonable] class A { string Name { get; set; } } class B : A { ... } class C : A { ... } var c = new C(); c.Clone(); ```