code: @Override
      public Node move(Node destNode, boolean overwrite) throws NodeNotFoundException, MoveException {
      	FileNode dest;
  
          if (!(destNode instanceof FileNode)) {
              return super.move(destNode, overwrite);
          }
          dest = (FileNode) destNode;
          if (!overwrite) {
        	    try {
            		dest.checkNotExists();
            	} catch (IOException e) {
        	    	throw new MoveException(this, dest, "dest exists", e);
        	    }
          }
          try {
              Files.move(path, dest.path, StandardCopyOption.ATOMIC_MOVE);
          } catch (AtomicMoveNotSupportedException e) {
              return super.move(destNode, overwrite);
          } catch (NoSuchFileException e) {
              throw new FileNotFoundException(this, e);
  		} catch (IOException e) {
  			throw new MoveException(this, dest, "os command failed", e);
  		}
          return dest;
      }
docs: Uses copy/remove to move between file systems.
  @return dest