Unlock mutex even when condition variable timeout is hit Add tests Relevant srfi-18 documentation: https://srfi.schemers.org/srfi-18/srfi-18.html NOTE: mutex-unlock! is related to the "wait" operation on condition variables available in other thread systems. The main difference is that "wait" automatically locks mutex just after the thread is unblocked. This operation is not performed by mutex-unlock! and so must be done by an explicit call to mutex-lock!.