(maint) Preserve stack, etc. when rethrowing in main
(maint) Preserve stack, etc. when rethrowing in main

Explicitly rethrowing the pending exception adds another wrapper,
whereas (throw+) just passes on the existing exception.

The relevant bit from the throw+ docstring:

  Within a try+ catch clause, a throw+ call with no arguments rethrows
  the caught object within its original (possibly nested) wrappers.

puppetlabs/trapperkeeper,scotje/trapperkeeper,rbramwell/trapperkeeper,camlow325/trapperkeeper