Remove the unnecessary `BuildConfigurationValue` wrapper around `BuildConfiguration`.

Instead, have `BuildConfiguration` implement `SkyValue` directly, and rename it to `BuildConfigurationValue`. Its `equals` and `hashCode` methods are removed - they were incomplete (notably, they did not consider the repository name). This was covered up by the fact that the wrapping `SkyValue` did not implement equality, preventing false change pruning.

`BuildConfigurationValue.Key` is promoted to a top-level class `BuildConfigurationKey`.

PiperOrigin-RevId: 406166220
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/CircularDependencyTest.java b/src/test/java/com/google/devtools/build/lib/analysis/CircularDependencyTest.java
index 0abd80b..2ab108f 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/CircularDependencyTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/CircularDependencyTest.java
@@ -24,7 +24,7 @@
 
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSet;
-import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
+import com.google.devtools.build.lib.analysis.config.BuildConfigurationValue;
 import com.google.devtools.build.lib.analysis.config.BuildOptions;
 import com.google.devtools.build.lib.analysis.config.BuildOptionsView;
 import com.google.devtools.build.lib.analysis.config.CoreOptions;
@@ -229,9 +229,9 @@
 
   /** A late bound dependency which depends on the 'dep' label if the 'define' is in --defines. */
   // TODO(b/65746853): provide a way to do this without passing the entire configuration
-  private static final LabelLateBoundDefault<BuildConfiguration> LATE_BOUND_DEP =
+  private static final LabelLateBoundDefault<BuildConfigurationValue> LATE_BOUND_DEP =
       LabelLateBoundDefault.fromTargetConfiguration(
-          BuildConfiguration.class,
+          BuildConfigurationValue.class,
           null,
           (rule, attributes, config) ->
               config.getCommandLineBuildVariables().containsKey(attributes.get("define", STRING))