[SPARK-3902] [SPARK-3590] Stabilize AsynRDDActions and add Java API

This PR adds a Java API for AsyncRDDActions and promotes the API from `@Experimental` to stable.
Ah, but I can do this:

```scala
val ce =  new CancellationException("Job cancelled")
ce.initCause(exception)
throw ce
```