Improve auto release logic

The first fix is for the first client who never had an auto release timer
because timers began for subsequent lock requests.

Furthermore, Previously auto release timer began counting for each
callback on a client's request to acquire a lock and not when the client
actually acquired the lock. This caused a problem for long lock queues
where clients had to wait longer than the timeout. Rapid auto releases
would occur, leading to everyone obtaining the lock at the same time.

Now there's only one auto release timer that's renewed on each lock
acquisition. It's a lot better approach.

And the default timeout is up from 30 seconds to 60 seconds.
Bump version to 0.2.0.