Rename sigprop-table constants to SIGPROP_ from SA_ to reduce the
impression of a namespace collision.

Add a new SIGPROP_SBUNWIND to identify signals where, if they are
received while in a sandbox and unhandled / unhandleable, we will
unwind the trusted stack.  This is intended for signals triggered
by samdboxed code -- eg memory protection errors.
Move definitions of SIGPROT_ constants to signslvar.h, amd make sigprop()
public so it can be used by machine-dependant code.
Break out each /bin/cheritest sandboxed exception test case into two
versions: one that uses an unsandboxed signal handler to field the
exception, and a second that relies on the kernel's default unwind
handler.
Revise CheriBSD signal handling code for sandboxed applications to support
multiple distinct and separately handled cases when a signal is delivered
while a thread is in a sandbox:

- If a signal is delivered by a synchronous trap and flagged as
  SIGPROP_SBUNWIND and unhandled, the the kernel will autounwind the trusted
  stack to the previous frame, clear register context, and return an error.

Otherwise:

- If a signal is delivered and is handled, but no alternative signal stack is
  defined, then terminate the process.

- If a signal is delivered and is handled, and an alternative signal stack is
  present, then switch to the ambient context to deliver the signal, by
  default returning to the same sandbox when the signal returns.