Getting closer with the latest resurrection idea. There appear to be
only two remaining issues: interaction with obstacles (do not
resurrect elements onto obstacles) and a kind of backwash effect in
areas where the heuristic gradient and the phi gradient are larger
than 90 degrees (well, that description is just a rough guess). There
may be some further issues with resurrecting consistent elements onto
the queue, not sure if that is linked to the obstacle problem or not.
The "backwash" has to do with the fact that when elements get pruned
in an area where the wavefront could then "want to wash over them,"
that's just what happens. So, pruned elements should behave more like
obstacles, which simply do not let propagation to update them.

There still is the issue with consistent elements ending up on the
queue when the upper bound is increased, and it coincides with
infinite keys (which should definitely not be on the queue).
Nah, the trivial way of handling pruned elements like obstacles does
not work as desired. Although it does reduce backwash, it can leave
holes in the boundary of pruned cells. Not sure how critical the
latter point is, but the fact that it depends on location (in an
otherwise symetrical area it does not appear) looks very fishy.