Multiprocessing, averaging

do period search with multiprocessing, replace weighted variance calculation for loops with numpy.average, value exceptions for numc.
This could be written much more concisely:

```python
def one_theta_feeder (args):
    return one_theta (*args)
```

And then even:

```python
one_theta_feeder = lambda args: one_theta (*args)
```

... and since lambdas can show up in the middle of other statements in Python, you don't even need to define a separate function.