bin/openquake:

Added `--no-distribute` command line switch to bin/openquake. This
allows calculation users to turn off task distribution and run oq-engine
in a single process.
bin/openquake, engine2:

`no_distribute` is now passed to the engine's `run_hazard` and `run_risk`
functions.
calcs/base:

Calculators now have a `no_distribute` attribute.
calcs/base:

Added `no_distribute` flag to `queue_next`. Calculators can set
this flag appropriately to either distribute tasks using Celery
or simply execute them as a plain function.
calcs/base:

Base calculator task queuing now includes the `no_distribute` switch.
engine2:

This the final piece to pass the `no_distribute` flag from the engine
to the calculator.
engine2:

Patched the engine calculation code to not abort calculations when
`no_distribute` is set and no worker nodes are online.

NOTE: So now the calculations work without Celery, but some of the
post-processing functionality still relies on Celery tasks.
calcs/hazard/disagg/core:

The disagg hazard calc now takes into account `no_distribute` in the
calculation workflow.
calcs/hazard/classical/post_processing:

Added `no_distribute` switch to hazard map post-processing.
calcs/hazard/classical/core:

Classical calculator now propagates `no_distribute` to hazard map post
processing.
calcs/hazard/classical/core:

Added handling for "no-distribute" case for mean and quantile hazard
curve post-processing.