Fix heapifier bug

When the current linked-list head element's successor is in the next heap slot
the successor's prev pointer must be adjusted during the swap, else it ends
up pointing to itself (and hilarity ensues)