[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.
From a purely pedant point of view, it's still possible for two threads to call `cancel()` and reach here, which means two cancelations would return `true` and violate the contract. Not a big deal though.