MPI Pool

For problems where a single calculation of the likelihood is significantly slow you end up needing a distributed memory machine very quickly.  This is also a really good way of using the parallelism that the emcee algorithm offers effectively.

I've added here two example files containing an MPI pool, so you can upscale the algorithm to hundreds of cores without changing the emcee core at all.  I also have another variant which is a little more efficient, but is pretty misleading and less future-proof should you change how pools are used in emcee.  (You can assume that the function being mapped never changes so you never have to send it).

The implementation uses the mpi4py package.