Expose multi-op from DataTree

We should provide the multi-op (all or nothing) support from DatTree, similar with http://www.cs.utexas.edu/users/lorenzo/corsi/cs380d/papers/paper2-1.pdf (see Database transaction section).

This will be helpful for batch requests.

The interface should be something like:

```
public List<Result> multiOp(List<Request> requests) 
```

We have a bunch of request class:

- SetDataRequest
- CreateDirRequest
- DeleteNodeRequest

...