Issue #22018: Add _testcapi.raise_signal()

- Use _testcapi.raise_signal() in test_signal
- close also os.pipe() file descriptors in some test_signal tests where they
  were not closed properly
- Remove faulthandler._sigill() and faulthandler._sigbus(): reuse
  _testcapi.raise_signal() in test_faulthandler
asyncio: Fix test_stdin_broken_pipe(), drain() is not a coroutine
(Merge 3.4) asyncio: Fix test_stdin_broken_pipe(), drain() is not a coroutine
Issue #22018: signal.set_wakeup_fd() now raises an OSError instead of a
ValueError on fstat() failure.
Issue #22018: Hum, set_wakeup_fd() still raises ValueError on Windows