DFixed the code: Embrace new alias syntax, kill C-style array, annihilate string concatenation, long live to DIP65
Add CloneFunction, a less stringy version of cloneFunction
Only generate body in lieu of the whole method, and use new CloneFunction