major overhaul

renamings, removed RankedItemPQD, added class methods for min, max and
custom heap type using an abstract base class to define custom Entry
types