[SPARK-3888] [PySpark] limit the memory used by worker

The memory limit of Python worker can be configurable by `spark.executor.python.memory.limit` (in MB), which is 0 by default (means unlimited).

it only works in Linux, so I did not put it in the docs, it will be useful for some advanced users (also no tests).
This is used by two modules, and related to conf, so it's better to put in pyspark.conf.