lib/locale.t: Use proper constant.

Prior to this commit, locale.t faked out setlocale() somehow by making
LC_ALL a function that returns nothing.  This commit changes that to use
the proper constant POSIX::LC_ALL
lib/locale.t: Fix :digit:, :xdigit: tests

In commit 32e8aa3fdb11b64c2a141bf56441761d978fd17b, I forgot that the
POSIX standard allows \d ([:digit:]) to match either the 10 ASCII
digits, or those plus another 10 locale-dependent ones.  This new commit
tests that the number matched is either 10 or 20, and if not 10, then
\d doesn't have to be a subset of [:xdigit:], so skip that test.
lib/locale.t: White-space only

Properly indent because of newly formed block
lib/locale.t: Improve debug output

This creates a function to display a list of code points that are passed
in.  It uses hex for non-ASCII graphics and otherwise outputs the
characters, perhaps as ranges.  It makes reading the output a lot
easier.  Previously, there could be discrepancies in if the output was
in utf8 vs what the file handle thought, and even when there was no
such discrepancy, the upper Latin1 characters were displayed as if the
locale is Latin1, which it likely wasn't, so the graphics were
misleading.
lib/locale.t: Change variable name for accuracy

The variable means \w, not Alnum, which matches [:alnum:], and has a
somewhat different meaning.
lib/locale.t: Add, improve debugging output

This now dumps out what all the [:posix:] classes match under debugging,
using the format introduced a few commits ago.  This is helpful in
examining what might be wrong.
lib/locale.t: Add comment
lib/locale.t: Make Windows machines failures TODOs

On some Windows machines, all locales are defective except the C locale.
See http://markmail.org/message/5jwam4xsx4amsdnv.