add naive priority queue implementation