Core: Make blob consolidation step threaded

It takes a long 5 minutes on larger imagery.
core: Fix blob x shifting on invalid value

The code was sometimes using front() on an empty list. This is
undefined behavior.

 LocalWords:  unstage src config
Core: Use a more exhaustive intersect

Instead of just intersecting the bounding bboxes, intersect the actual
shapes.