Adding `run_workers` class method to `Manager`.

Adding classmethod `run_workers` to class `Manager`. This is the
primary method by which to use the Manager class to multiprocess
workers. All multiprocessing in this package should now be done
through this method.

In short, the method loads a multiprocessing queue with provided
workers, creates `num_processors` Manager instances to run the
workers in parallel, and then checks all returned workers for
errors, and raises any errors encountered.

Not only is it nice to have one method for carrying out all
multiprocessing, but it also allows all workers of the base
class `Worker` to return and raise their errors to the main
process. This prevents deadlock and hanging when workers raise
exceptions in a subprocess.
Updating `Worker` base class to store errors.

Updating the base class `Worker` to store any errors raised during
the `start` method as attributes. This allows `Manager.run_workers`
method to check for any errors and raise them in the main process.

Previously, `Worker`s were raising any errors in subprocesses which
caused deadlock and the main process would hang.
Updating `ABCTeam` to use `Manager.run_workers`.

Updating `ABCTeam` class to perform all multiprocessing via the
new `Manager.run_workers` method.
Updating `dmc.py` to use `Manager.run_workers`.

Updating the `dmc.py` script to perform all multiprocessing via
the `Manager.run_workers` method.
Adding tests to `test_msbayes_priors.py`.

Adding tests to confirm that `MsBayesWorker`s will choke on poorly
formatted config files (rather than run along happily using
default settings!).

Also, updating tests to use `Manager.run_workers` for multiprocessing.
Updating `test_teams.py`.

Updating tests to use `Manager.run_workers` for multiprocessing.