Adding support for pseudo parameters

Adding new PSEUDO type for parameters.  These parameters are not sampled
randomly; rather they just act as iterators that range from the min and
max specified values, looping as necessary to produce the requested number
of particles.  Although it is possible to specify multiple PSEUDO parameters,
this is likely not sensible, since all PSEUDO parameters are incremented with
each successive particle, rather than working like nested loops.

This commit also includes a makefile tweak and some refinements to make the
code fail gracefully in response to certain nonsensicle usage, e.g. running
under MPI but using only one thread (at least 2 are needed, since one is a
dedicated scheduler and does no simulations).