PetscError now takes in an MPI_COMM argument