test: add test-domain-exit-dispose-again back
d1ba82af "fixed" test-domain-exit-dispose-again by changing its logic to test that process.domain was cleared properly in case an error was thrown from a timer's callback.
However, it became clear when reviewing a recent change that refactors lib/timers.js that it was not quite the intention of the original test.
Thus, this change adds the original implementation of test-domain-exit-dispose-again back, with comments that make its implementation easier to understand.
It also preserve the changes made by d1ba82af, but it moves them to a new test file named test-timers-reset-process-domain-on-throw.js.
This is a back port of #4256. /cc @Fishrock123 @nodejs/lts.