Use add/delete pattern instead of gets/cas.

Simpler & shorter code, fewer roundtrips, does not produce garbage on
python-memcached level (cas_ids).
Drawback: lock re-entry counter is not visible on memcached level.
Allow disabling release safety check.
Implement blocking acquisition quadratic backoff.
Add timeout support for lock acquisition.