Properly deliver signals at descheduled syscalls.

We *deliver* the signals properly now, but we don't (yet) handle *restarted* descheduled syscalls.  This gets us probably 90% of the way to #363 though; the restart handling should be simple with this framework in place.