add getPriorFuncs, wrapPars, removeFixedPars to replace interpretPriors

A step towards rehauling priors and priorFuncs (#15) for easier
readability. Rather than a crytic list of tuples, lists, or floats,
priors will now be a list of tuples, each tuple with a description
string ("uniform", "norm", "truncnorm", "wrap") and some number of
arguments that depends on the style of prior.

interpretPriors is broken into 3 separate methods. lnProbVMapModel
calls getPriorFuncs at each step in the chain since we can't pass
priorFuncs since they're not pickleable and that's required for the
parallel option. wrapPars is also called at each step so that a
guessed par that runs out of range can be rectified without causing
weird sampling issues, e.g. PA=362. is an ok value, but it needs to be
changed to 2. before evaluating the prior. removeFixedPars only needs
to be run once, when setting up the chain shape for the sampler.

Commit also introduces new functions to be used for priorFuncs,
replacing makeFlatPrior, makeGaussPrior, and makeGaussTruncPrior with
functions from scipy.stats. It appears that a more modern version of
scipy is needed to evaluate these stats functions with their builting
logpdf method. But using these function will enable some repeated used
of getPriorFuncs in ensemble.generatePars since we can use the builtin
rvs method to generate random deviates.

A future commit will remove the deprecated code of interpretPriors and
these other functions.