Better Multiprocessing on PTSampler

I re-wrote the PTSampler to take better advantage of multiprocessing.  It still passes all the tests in the repo, and I've been using it for projects locally, so I think it's ready to pull into your master, Dan.  Changes are:

* Better temperature spacing (in general---sometimes this still takes tuning), based on the assumption that the posterior is a N-dimensional Gaussian, for which 25% temperature swap acceptance rate is desired.

* Parallelism across all ensemble members at all temperatures when the multiprocessing module is used; formerly, parallelism was only across ensemble members at each temperature, with temperatures handled sequentially.  This simplified the code (multiple calls to embedded EnsembleSampler objects), but at significant cost if the posterior objects are expensive to pickle compared to a posterior call.