the same terms as the perl 5 programming language system itself
Use namespace::clean to avoid leaving subs with the same names as macros in your package.
Implement some of this in XS for about a 30% runtime speedup.
Remove the XS added in the previous version as that has been split out into Sub::Boolean.
Ensure Macro::Simple handles namespace::clean being missing.