Implements the
nodeExists method as per the specification in {@link Preferences#nodeExists(String)}.
This implementation is very similar to {@link #node(String)}, except that {@link #getChild(String)} is used instead of {@link #childSpi(String)}.
@param path the path name of the node whose existence is to be checked.
@return true if the specified node exists.
@throws BackingStoreException if this operation cannot be completeddue to a failure in the backing store, or inability to communicate with it.
@throws IllegalArgumentException if the path name is invalid (i.e.,it contains multiple consecutive slash characters, or ends with a slash character and is more than one character long).
@throws IllegalStateException if this node (or an ancestor) has beenremoved with the {@link #removeNode()} method andpathname is not the empty string ("").