restore default Lock token storage, add toggle to make it thread-local
* add thread_local=False parameter to Lock.__init__() and StrictRedis.lock()
* use thread_local to decide whether to put token in thread-local storage
more info on thread local storage
pack multiple commands in a pipeline into larger strings.

fixes #495
fix python3 compat