Support for lists + quoted atoms

This includes support for nil. I'm also returning nil correctly from the
"void" functions in stdlib. Technically, due to the implementation
details, I was already doing so (nil in the runtime is represented by 0,
and NULL defined as 0), but I've made it clearer in the code.
Support for booleans/conditionals
Add null? in order to test recursion

In doing so, I cleaned up a few magic numbers. But now, map and length
work on lists!