/// `AbortIfPanic` aborts the current process on the thread
/// if it ever gets dropped.
/// The only way to avoid it is to call `std::mem::forget` on the
;
/// `RunOnDrop` implements a type that runs a function when
/// it gets dropped, providing a similar convention to go's defer.
;