Add basic priority queue implementation