Preemptive priority - added necessary predicates and laid out groundwork for algorithm implementation

I added some predicates; one is for sorting based on priority (low priority sorted first) and one is for sorting based on arrival time (for the TARQ queue). Also, added const to the end of accessors for const-correctness. And added the framework for the preemptive priority algorithm.