Rename JobQueue to PriorityQueue, and keep it as ignorant as possible of the items it's handling.
Support an infinite maximum size for PriorityQueue.
Drop the ResultQueue class, since PriorityQueue can fill both roles now.
Fix a few comments.
Make migration logic a bit clearer.