I've changed the policy in trunk. After talking with Stephen Skory about this, and going back and forth, it became obvious that the original policy of running in parallel "whenever possible" via autodiscovery of the mpi4py module & job size was not a viable option. You now have to use the executable 'mpi4py' instead of the standard 'python' if you want to notify yt to run in parallel. (The executable mpi4py is part of the mpi4py distribution, and is available by running the 'install_exe' task on their setup.py.)
So, instead of:
mpirun -np 4 python2.5 some_script.py
mpirun -np 4 mpi4py some_script.py
By avoiding global variables, we are able to preserve the usage of identical scripts in parallel and in serial. (From the yt perspective.)
I'm still working on parallelizing other objects (slices & cutting planes) besides projections, quantities & profiles; Stephen Skory has begun work on parallelizing HOP, which would be a pretty awesome addition. More updates as they come.