Adds handling of an asynchronous signal arriving in clean_call_{save,restore} by finding the return address on the dstack and unlinking the to-be-returned-to fragment.
Re-instates the i#2328 assert as these clean call helpers account for all observed cases and we would like to know whether there are any others.
Issue: #2328 (closed), #2042 (closed)