Create a Priority Queue implementation based on the Heap