PriorityQueue implementation.

First pass implementation of working PriorityQueue.
Still need to implement ICollection interface methods.