[SPARK-3595] Respect configured OutputCommitters when calling saveAsHadoopFile

Addresses the issue in https://issues.apache.org/jira/browse/SPARK-3595, namely saveAsHadoopFile hardcoding the OutputCommitter.  This is not ideal when running Spark jobs that write to S3, especially when running them from an EMR cluster where the default OutputCommitter is a DirectOutputCommitter.
This use of system properties here means this test can't run in parallel. It might be good to do things:

1. Guard these tests with a lock so both can't run at the same time.
2. Clear the `mapred.committer.ran` property before starting the test (otherwise you could get a false positive).