Correct number of links in engine_maketasks()
Correctly count the number of cell->task links required and only create the necessary number given the engine policy.
This fixes a bug reported by @lhausammann when testing a simple hydro + self-gravity box.
It will also (very marginally) reduce the memory footprint in the purely hydro cases.