Slight optimisation to variable defaulting

Now, if a variable occurs multiple times in a macro's expression, it
should only be defaulted once by the injected code.

Also, fixed a few fullArgs() calls.