Guard against an invalid, negative array slice
Refactored a bit of anf, and added support for global refs
Added some builtins for putStrLn, and wrap the core in them in :eval
Fixed a bug in popWith

squash sets the appropriate stack pointer, so don't overwrite it with an
inappropriate one.
Added putStrLn to the type checker and evaluator