asort() doesnt respect index order for identical values, but it looks like arsort works. reversed iteration logic.
swap priority index low / high method calls
key_sort() -> ksort() to avoid confusion
added priority queue tests