[WIP] Function dirnames should be keyed by their code, not the function name
[WIP] Passes tests: thread `func_key_mode` through other functions too
Make func_key_code a non-optional parameter in the helper
Add docstrings for the new function_key_mode param
Fix representation of a Result to include the function key
Add documentation to the `func_key_mode` parameter.