complete random tree walk algorithm: keep walked paths on a stack so we can come back up out of a dry directory and try another