sorting should be an optional interface between collector and their children
Right now sorting for items is defined on Node but really only used in pycollect between Modules and their children. Indeed comparisons between things using the _getsortvalue in pycollect.py and the default implementation in collect.py would not produce meaningful results.
My idea would be to remove general sorting support from collect.py/Node and move it to pycollect based maybe just on reportinfo(). People defining their collectors completely independently from the pycollect hierarchy would define their own approach.
I can cook a patch if this sounds reasonable.