Add age method; Add debug logging; improve locking

 * simplify age method
 * use redis multi
 * add debug logging
 * use setex
 * lock behaves inside the do WATCH now
 * use redis hashes as underlying storage mechanism
 * locking exception handling
   * add more logging
   * make retry delay increase with each retry