fixed some issues with lambdas, still have a million more

I realized why I can't define something like ++! without macros, and I
fixed some issues I was geting with recursive functions, but now they
fail for some other reason.