add compile-time test for negative subscripts
unify the Negative exceptions

The X::Subscript::FromEnd exception largely duplicated the
X::Subscript::Negative exception, and was guessing inappropriately
about whatevers.  It was also cluttering up the subscripting hotpath.
Dwimmy guessing on negative subscripting is now done in the compiler,
not in the runtime.  Negative subscripts are now treated uniformly
at run time regardless of how they were calculated.