Allow ExecuteContexts to be compared
Use __future__/absolute imports in some common sparts modules
sparts.collections: PriorityQueue implementation

This diff introduces a new module, sparts.collections.  Its first member
is PriorityQueue, a queue.Queue subclass that maintains items in sorted
order, using the builtin heapq module