Use EXPIRE and EVAL Redis commands instead of MULTI

NOTE: Only works with Redis >= 2.6.0

Changed the lock implementation to the one recommended on the [Redis set page](http://redis.io/commands/SET). I see that in the README you decided not to use setnx, but since the SET command now has an option to expire the key, the recommended algorithm is robust. Only one key is set per lock and no MULTI commands are used. Since this uses Lua scripts to release and extend locks, it will only work with Redis >= 2.6.0.