Fix pqueue sort boundary condition bug

If the pqueue comparison fn returned just 0 or 1 (think `return (a < b)`) then the sort order of returned items could be wrong because there was a `< 0` that really needed to be `<= 0`.  Yikes!!!

Fixes issue #2182 - thanks @nulltoken!