Simple heap-based priority queue implementation.

About the simplest thing possible.  We may want to change
the data representation to be more efficient and allow for
changing keys.

Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
Stride scheduling draft 13, with explicit promoted queue.

Signed-off-by: Edward Z. Yang <ezyang@mit.edu>