Don't bind flattening things to a Scalar.

Relying on this dubious behavior prevents otherwise-successful case
analysis of Scalar assignment, forcing all assignments to scalars to
endure extra checks, bulking code-gen significantly on Moar.
Case-analyze $ sigil assignment.

We already did it for @ and %; this leaves sigilless as needing the
full-blown checks.
Use "$a is rw" to exploit better code-gen.

This replaces some "\a is rw" usages. When we know it's a scalar of
some kind, use $ to get simpler code-gen.