Missing a lock in move_node and missing the case when the heap had only 1 element left.