priority_queue, bst implementations