Raise asynchronous exceptions in other threads, control the timeout of
blocks or callables with two context managers and two decorators.