Bug fix: closures weren't being pushed correctly in the frame. currClosure was
set before call(), which would then push the *new* closure rather than the
old one. The new closure is now set in a temporary, which is what gets called.
and then currClosure is assigned in call() after the push.