cctools.py: added variant_key_by_cat_product()
cclint.py: sort variant errors