[SPARK-3634] [PySpark] User's module should take precedence over system modules

Python modules added through addPyFile should take precedence over system modules.

This patch put the path for user added module in the front of sys.path (just after '').
Do we explicitly add `root_dir` to `sys.path`?  I don't think we can always assume that the Python driver / worker are executed from inside of `root_dir`.