Structs

Use with BinaryHeap. Since it’s a max-heap, reverse the comparison to get the smallest cost first.