Names are organized by context. For instance contexts can be: expressions, patterns, types, ...
- kind is a description of the things registered. For instance: "extension",
"attribute", ...
current_file is where this function is called. Must be __FILE__.string_of_context: human readable description of a context