queue-to skill in a vector sets the priority of the caller in the queue and not the queue priority on the Agent.
Normally calls enter the queue at the back and wait in line for an Agent (first-in, first-out). But emergency calls should go to the front of the line to minimize their wait time. You would queue-to a higher priority to push them to the front of the queue for the next available Agent.
You could use a scale something like:
(L)ow for normal, non-critical calls
(M)edium for normal calls that have waited over 3 minutes
(H)igh for emergency calls
If there are 3 Low priority calls in queue and the 4th call is High, then the 4th caller is pushed to the head of the line and the 3 Low priority calls remain where they were.
The skill level of the Agent helps determine which agent will get the call. If there are two Agents with the same idle times and the same skill then the higher skill level would get the call, with level 1 being the highest and 16 being the lowest.
There are other factors that determine who would get the call such as the group type (EAD-MIA, for example) that look at idle times and such.
There's a lot of reading material available, and I'm certainly not an expert on call centers, but I hope this helps explain the difference between the Agent skill-level and the queue priority.