Fix #571: handle variable swapping correctly (by not optimizing LOAD_FAS...

...Ts too eagerly)

Note there is some complication, because other parts of Numba must still be able to infer that a function result comes from the function arguments.

WIP : the fix works, but I'm looking into removing the unused temporaries.