priority queue in go