Merge pull request #52 from m1ch1/master

Update the spec on the wait semantics.
Does PUT/DELETE with version check.

- If version is -1 in PUT, then treat it as creation.
- If version > -1 in PUT, then treat it as set and we set the node if
and only if the versions match.
- If version > -1 in DELETE, then delete node if and only if versions
match.
Add integration test for PUT/DELETE with version check.
Merge pull request #53 from EasonLiao/request_version

Does PUT/DELETE with version check.
Implement right semantics for wait with version
Make the name of sequential node to be the version of dir
Merge pull request #50 from EasonLiao/wait

wait should return if file/directory gets deleted before reaching the version
Merge pull request #41 from EasonLiao/seqnode

sequential file: use directory version as the sequence number
don't include sessionID field for regular files/directories
Merge pull request #40 from EasonLiao/session

don't include sessionID field for regular files/directories
Hide path header, add Location header for sequential node.
Merge pull request #46 from EasonLiao/add_location

handling location/path headers
Simple validation about query parameters.
Merge pull request #43 from EasonLiao/validate_para

validate query parameters
Implement transient directory.

- Implement transient directory.
- Define 4 types of node : FileNode, DirNode, EphemeralFileNode,
  TransientDirNode.
Merge pull request #12 from EasonLiao/transient

creating a new transient directory?
Update SPEC.md

Add spec about /pulsed/servers.
Merge pull request #60 from EasonLiao/update_spec

Update SPEC.md
Stores cluster members under /pulsed/servers of tree.

- Stores cluster configuration in DataTree.
- Inspecting cluster members is like inspecting regular files.
- Add integration test.
Merge pull request #61 from EasonLiao/pulsed_servers

Stores cluster members under /pulsed/servers of tree.