pwkit/numutil.py: add rms() and weighted_variance() functions

I never even knew that numpy.average() existed until Elisabeth Newton
suggested it! Using it apparently gives a large speedup compared to the naive
computation in pwkit.pdm (which will be removed shortly).
pwkit/parallel.py: framework for simple, optional parallel processing
pwkit/pdm.py: small improvements courtesy of Elisabeth Newton
pwkit/pdm.py: parallelize the PDM computation

Derived from a patch to pwpy by Elisabeth Newton. This version uses the new
little ParallelHelper system that I've just devised so that the PDM code itsel
doesn't have to worry much about setting up the infrastructure for parallel
computations.

Between this and the new weighted_variance, also provided by Elisabeth, the
runtime of one of my applications decreases from an hour to 8 minutes.

Closes issue #1.
Merge pull request #2 from pkgw/issue-1

Fix issue #1.