Does PUT/DELETE with version check.

- If version is -1 in PUT, then treat is as creation.
- If version > -1 in PUT, then treat is as set.
- If version > -1 in DELETE, then delete node if and only if versions
match.