Don't inherit from Observer
Use micro python uheapq for priorityqueue