finish user add to queue, refactor queue_item_controller