Adding back top-eval since it is going to be useful for tests.
Added a seperate file for helper procedures/macros.

I moved switch and switchlet from the interpreter to the helper file.