Separate macros into separate Value variants
Flatten list pattern matching
Renamings: Lambda->Fn, Rust->ExternFn, RustMacro->ExternMacro