Improves repeated signal interruption by relinking any prior interrupted fragment before replacing it with a new one. This happens when we've guessed at what fragment to unlink when interruption is in generated code. We add a field indicating the guess and use it to relax an assert. We also add a new in_fcache_return() routine, used to rule out one case of incorrect guessing.
Fixes #2328 (closed)