- Single-threading ok except for small memory leak
  due to allocation by openMP, which I don't know how
  to reverse.
- Multi-threaded version not running yet.
First multi-threaded version that works.