Add tests of the lambda lifting code

shitty tests >> no tests, unfortunately I don't really have a better way
to test the code emitters than ensuring that the eval of the result is
equal to the eval of the source AST.
Add a simple nested letfn test case
Add a test for lifting letfns with the same name

This test makes sure that lifted letfn forms do not result in name
conflicts under Oxcart.
Add a case covering local rebinding

Make sure that for nested definitions of bar, the correct one is the one
used after lambda lifting occurs.
Whitespace
Make lift-lambdas a fix operation

Don't stop till we lift 'em all! :D