charnames.t: Make EXPECTs more robust

We can use OPTIONS regex in test.pl to avoid tieing to a spcific line.
The random option is no longer needed, as the messages that were coming
out in random order have been removed by another commit.  The Execution
aborted messages also can be omitted, and the tests pass.
charnames pod: Nits
utf8n_to_uvuni() pod: Add clarifications
toke.c: Extract part of \N{} processing to new function

This is in preparation for making the deprecations that this code covers
and making them fatal.

This code combines the first and final portions of the code that handles
\N{names}, leaving the middle intact.  There are no intentional logic
changes.  The code is moved and outdented as appropriate for not being
within nested 'if's, and the comments are reflowed to fill 79 columns.
One declaration had a const added.

This is needed to be done, as the current warnings become fatal, and
should be done before processing is wasted on computing the values that
are about to be thrown away.
charnames: Correct pod misstatement

Character names can contain Latin1 currently, not just ASCII.
Make \N{alias} deprecations fatal.

Since v5.12, using some non-name like characters, like commas, have
generated a deprecation warning.  The required 2 releases have been
made, and they are now being made fatal.
charnames: Don't accept illegal :aliases

Now that improper names for characters are an error, we can forbid them
at definition time.
toke.c: Don't validate core charnames output

charnames now refuses to allow invalid aliases to be installed, so we
only need to validate those that come from a custom translator.
perldiag: Add entry for unknown charname
toke.c Refactor S_get_and_check_backslash_N_name()

This code was recently factored out into a separate subroutine, and was
originally designed for a non-fatal deprecated warning.  This
refactoring just goes immediately to failure when an illegal character
is found.

(It also changes the code to use Perl standard coding practices)
toke.c: [RT#73022] Make \N{...} UTF-8 clean.
toke.c: Remove no-longer needed {...} and outdent correspondingly

No code changes
utf8.c: Fix potential bug

Commit 87367d5f9dc9bbf7db1a6cf87820cea76571bf1a changed
core_invlist_init() to return not the swash, but the swash's inversion
list if small enough, allowing a faster binary search than a slower hash
look-up on small lists.  Calls to two functions that access swashes were
changed to make this transparent.  However, there are two more such
functions which were overlooked, and need to be upgraded to provide such
transparency, should they ever be called on swashes that have been
converted.  This commit fixes one of them, but leaves the other, with a
comment, as it's much harder to do, and will not ever likely be
called on such a swash (it is for internal core use only).
utf8.c: White-space, comments only
utf8.c: Request function to be inline

This could remove a layer of function call overhead for this small
function, (if the compiler doesn't already choose to inline it).
handy.h: Define some macros for consistency

isWORDCHAR_uni() and isWORDCHAR_utf8() are defined for consistency with
the other isWORDCHAR...() macros

The isALNUM_foo() versions are retained for backwards compatibility
handy.h: Convert 3 macros to standard form

These three outliers don't have to be.  They can use the same
constructed form as the others surrounding them.  One requires a
temporary #define which will be removed in a future commit
handy.h: Use class numbers instead of macros in macro generation

This refactors the macro builder macros to accept a class number instead
of a macro name.  This is easier to understand than having to use
CAT2(), and it allows for a potential future commit to use these at
run-time, given a class number.
handy.h: Mark more clearly things for internal-only use

This changes the names of some macros to begin with an underscore, and
changes comments to more clearly indicate things which aren't to be used
outside the Perl core.
handy.h: white-space, comments only