Refactored the code & refined the test(s).
Don't auto-generate a disallowed prefix.
When $disallow... is enabled, force the preferred default namespace,
even if that will require non-root declarations.
Made one of the test samples use a valid namespace URI.
Minor change to wording of explanatory comment.
Allow any element name to be used in $ns-prefs.