Added a greedy variation of Bibek's version of the advanced optimiser and a min heap to support it.