pub fn validate_new_name(name: &str) -> Result<(), String>
A new name must lex as exactly one identifier (keywords lex as their own token kinds, so they fail this check).