Use 'generate_canonical' for random numbers
Add possibility to use a single generator with MPI

- if enabled with 'hep::mpi_single_generator(true);' the MPI integrators
  yield results that are independent from the number of MPI processes
  and in particular identical to the results of their non-MPI
  equivalents