mostly. compile_edit(), compile_tmpl(), compile_module(), and
compile_function() are still in compile.c
Many helper functions are exported in interpret_priv.h. Some of
those should be cleaned up / renamed / un-exported.
The function names could likely be cleaned up. Much of the code
uses unlang_foo() for private functions. It should arguably use
private function names.
The unlang_register() function takes a type as both a function
argument, and as a field in unlang_op_t. Fixing that will require
changing instruction->type to instruction->op in the interpreter,
which should be a next step.
The hash function is just fr_hash(). We should arguably come up
with a perfect hash for the keywords, which will help simplify
the lookups.