This avoids the need to implement Drop on every wrapped mutex, and removes the need for unsafe code in this crate.