Parse the workspace name when a repository is loaded

Moved RepositoryValue to RepositoryDirectoryValue so that it could be cached
(and not re-downloaded) even if the WorkspaceAST caused a Skyframe restart
(as mentioned in https://github.com/bazelbuild/bazel/blob/master/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryDelegatorFunction.java#L130-L133).

--
MOS_MIGRATED_REVID=113358489
diff --git a/src/create_embedded_tools.sh b/src/create_embedded_tools.sh
index dfd3419..6f296f6 100755
--- a/src/create_embedded_tools.sh
+++ b/src/create_embedded_tools.sh
@@ -44,7 +44,9 @@
   cp "$i" "${PACKAGE_DIR}/${OUTPUT_PATH}"
 done
 
-touch "${PACKAGE_DIR}/WORKSPACE"
+cat > "${PACKAGE_DIR}/WORKSPACE" <<EOF
+workspace(name = "bazel_tools")
+EOF
 mkdir -p "${PACKAGE_DIR}/tools/defaults"
 touch "${PACKAGE_DIR}/tools/defaults/BUILD"
 for i in $(find "${PACKAGE_DIR}" -name BUILD.tools); do