Factor changeRetToArgAndClone()

A further factoring of changeRetToArgAndClone(), to get the constituent functions under a page each.

I also noticed that there were a number of places where reference temps were being inserted "by hand", but this is also done in a sweep at the end of the pass.  Letting insertReferenceTemps() handle the insertions saves about 60 lines of code.  Note especially the removal of the "else if" clause in insertDestructorCalls(), whose purpose was to supply a reference temp.  (This change differs in form from the others.)

[x] Tested with --verify
[x] Tested with --no-local
A general comment on the overall purpose of the function and what is expected of the arguments and return type would continue the (minor) work I've done in this area to better document this complicated file.