add utility for cloning IAppDotNetObjects

this is simpler than implementing clone() in all classes that implement IAppDotNetObject