Added try_lock to Mutex

The `Mutex` struct previously had no try_lock. This patch adds it.
Conventions-wise, I believe this should return a `bool` rather than an `Option`.