rename SB-SIMPLE-STREAMS utility function

At least, I think it was simply intended to be a utility function,
but the FILE-NAMESTRING name is unfortunate, as that's a CL function,
and (for other reasons) SB-SIMPLE-STREAMS claims to implement CL in
the package lock sense, so this was not noticed at the time.

This fixes lp#884603; I am unconvinced that the namestring logic is
actually correct (keeping the distinction between NAMESTRING and
NATIVE-NAMESTRING clear) but I'll wait for an actual user to complain
about that before thinking too hard.
Fix CHAR-EQUAL on base-chars on non-sb-unicode.

BASE-CHAR-P, called by TWO-ARG-CHAR-EQUAL, isn't properly implemented
on non-sb-unicode, the transform by which it gets transformed into
(typep x 'base-char) is disabled, causing an infinite loop.
Since testing for base-char-p is usually redundant on #-sb-unicode,
don't define it there at all. This will catch inadvertent uses.
In the few places where it's currently used, it's can be safely
omitted.

Reported by Jan Moringen.
Micro-optimize move-immediate on x86-64.

Use XOR X, X when the immediate is 0.
Fix a regression in sb-safepoint.

WITH_GC_AT_SAFEPOINTS_ONLY is actually a fancy macro, which wraps the
form following it in some code. In a recent change that wasn't
accounted for and resulted in bad consequences. Add {} around the code
after WITH_GC_AT_SAFEPOINTS_ONLY.
Reported by Jan Moringen.
detect cpl-protocol-violations early

Don't try to eagerly finalize classes which will cause
cpl-protocol-violations to be signalled.  (lp#309076)
rename recently-added tests

use only keyword symbols in the names to assist in continuous
integration