||If empty, a
BufferedBreedingPipeline makes a request of exactly num-inds
individuals from a single child source; it then uses these
individuals to fill requests (returning min each time),
until the buffer is emptied, at
which time it grabs exactly num-inds more individuals, and so on.
||ForceBreedingPipeline has one source.
||GenerationSwitchPipeline is a simple BreedingPipeline which switches its source depending
on the generation.
||MultiBreedingPipeline is a BreedingPipeline stores some n child sources;
each time it must produce an individual or two,
it picks one of these sources at random and has it do the production.
||ReproductionPipeline is a BreedingPipeline which simply makes a copy
of the individuals it recieves from its source.