priority queue works with primitives, not objects
ordered_q
dirty changes