Replace annotation_processors with plugins

Follow bazel's modules for annotation processors by introducing
a java_plugin module type that can contain extra metadata about
the annotation processor, the processor class and a flag to
specify if the annotation processor is compatible with the
turbine optimization.  Deprecate the annotation_processors
property, which took a list of java_library_host modules, in
favor of the plugins property, which takes a list of java_plugin
modules.  The annotation_processors property will be removed
once all uses have been replaced with plugins.

Bug: 77284273
Test: plugin_test.go
Test: m caliper
Change-Id: I37c1e80eba71ae2d6a06199fb102194a51994989
diff --git a/java/kotlin_test.go b/java/kotlin_test.go
index 1069f42..3deea13 100644
--- a/java/kotlin_test.go
+++ b/java/kotlin_test.go
@@ -87,10 +87,10 @@
 		java_library {
 			name: "foo",
 			srcs: ["a.java", "b.kt"],
-			annotation_processors: ["bar"],
+			plugins: ["bar"],
 		}
 
-		java_library_host {
+		java_plugin {
 			name: "bar",
 		}
 		`)