* m4/symtab.c (m4_symbol_rename): New function that performs a low
level symbol rename.
* m4/m4module.h (m4_symbol_rename): Declare it as part of the API.
* modules/gnu.c (regsub): Factored out of m4_epatsubst_do...
(m4_patsubst_do, m4_renamesyms_do): ...wrappers that use
regsub...
(erenamesyms, renamesyms): ...builtins that use these to implement
macro renaming by regular expression.
* doc/m4.texinfo (Erenamesyms and Renamesyms): Document them.
* tests/generate.awk: Allow some forbidden `m4_' prefixed symbols
to stop the new generated tests from choking.