abstracted out the ivar ready queue clear procedure and moved the dequeue operation to be premptive
rather than only on empty frames. It now runs on every frame return.