Don't discard exception instance data in debug mode

If the debugger's monkey-patched raise was passed an instantiated
exception, the #exception method was called with a potentially nil
argument, causing its instance data to be thrown away. This hides
potentially useful information from the user.

Fix it by allowing instantiated exceptions to be reraised unharmed.

Fixes #17622.
tbb: update broken download link

Closes #17631.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>