Use add/delete pattern instead of gets/cas.

Simpler & shorter code, fewer roundtrips, does not produce garbage on
python-memcached level (cas_ids).
Suggested by James Haggerty <jamesh@freelancer.com> .

Also, stop pretending to support lock persistent on ThreadRLock, as
threading.RLock internal state cannot be restored.
Also, add "resync" method, to refresh internal state from memcached to
cure desynchronisations.
Allow disabling release safety check.
Implement blocking acquisition quadratic backoff.

Suggested by James Haggerty <jamesh@freelancer.com> .
Add timeout support for lock acquisition.

Suggested by James Haggerty <jamesh@freelancer.com> .
Distinguish between unresponsive memcached and failed command.

python-memcached is making this hard for "add".
Implement stand-in optional behaviour.

Suggested by James Haggerty <jamesh@freelancer.com> .
Rework docstrings.