Correctly configure PJRT execution when nprocs=1. (#4285)
* Correctly configure PJRT execution when nprocs=1.
Currently there is not easy way to tweak a model written with
pjrt.run_multiprocess to run with single core/device easily.
This is a useful feature when debugging some model failure.
In the XRT world, we can pass the `num_process` as 1 to `xmp.spawn`, and
this should be mirrored in PJRT.
* Format python
* Incorporate review feedback
* Use executor until more review comments come in
* Update pjrt world size test.
* Remove subprocess executors for nprocs=1.
* Cleanup duplicate code and unneeded wrapper.