Implement signal delivery. Signals are delivered at syscall exit
by registering a handler to the syscall shim. The same handler
could be potentially register a handler to a preemptive scheduler's
context switch.
Notable differences from Linux:
- The Core disposition falls back to Term, as we don't support
application core dumps.
- The Stop and Cont dispositions are ignored, as these are normally
relevant to shells.