Add wrappers for Cooperative Scheduling of Background Tasks API
JShelter modifies the return call to:
1. Never leak the information that the call was triggered by an
expired timeout.
2. Fake the information on remaining time in synchronization with the
`Date.now()` wrapper. Returns up to 50% more time compared to the
original value.