I think intersection is the most significant cause of the current categorisation system.
My understanding of the current reasoning behind categorisation as seen on Commons and elsewhere is that:
1) the lack of category intersection causes the very specific categories, which are essentially saved category intersections.
and
2) the category list at the bottom of the page being very literally the category names as listed in the page wikitext is why pages are only included in non-overlapping leaf node categories.
On en.wp there are many useful specific categories which are deleted because they would only 'clutter' the category section of the page content footer. E.g. Spanish Paralympic competitors at the 2012 Summer Games. Most other multisport cohorts/intersections can have a category, but 'by country; by games' cohort is currently not permitted.
Fair enough. I've seen stubs on en.wp where the category section of the page is larger than the page prose.
IMO the 'future' of categories in wikimedia projects would be to replace the very specific 'intersection categories' with saved queries in wikidata, with the category list at the bottom of the page dynamically including the list of saved wikidata search query results that the page is a member of, if the local project has more than <d> pages that are members of the query.
-- John