Adding Heap Sort