Update

Fix join redirection bug

Change better error name for watcher

Add more test and benchmark

Clear and Simplify tree list codes

Add mutex in the store to avoid ```snapshot``` and ```get``` interleave with other commands. We do not need to care about lock performance, in most cases it will just go through since raft will sequentialize all the sensitive commands. And this will not become the bottleneck of the system.