For lock use GetW instead of ExistW to avoid leaving a watch.

ExistW sets a watch for both the node existing and not. For the lock,
in the case that the node doesn't exist the node will never exist
so the watch that gets created never gets triggered.