Add parsing for comparisons
Implement comparisons

-Refactor runtime functions into their own file, and make it so each one has
both a type checker and an evaluator.
-Change types to be slightly more first-class (currently just string constants)
since we now have two of them.
-Add implementations of comparison types.
-Change the compiler and evaluator to use the new Function class.