added basic clone generation
added Clone support
refactored to codegen filter