Revive mutex(); New behavior: mutex ID as argument (instead of filename to make it clear that specified file is not the target being locked, but a primitive cross-platform semaphore)