added decreaseKey for priority queue, still has a bug though..