using ensure to unlock
tested to make sure that we leave the mutex unlocked
checking locked state in tests
bumped version to 1.1.1