I think you start to mix things again. Partly dowloads of only needed things, compression of mods are nice but not the main things we talk about here.
I think that if you take the quick fix of simply adding a <dependency> tag to the xml somewhere and expecting the mod maker to fill it in correctly, then you're missing the big opportunity and it won't be robust or used as much or as well as we'd like
But lets regard another part of your ideas the central list of crcs:
This is a interisting idea, but how and where can we host all versions(releases) of all mods for all time ( and for free )?
Well you can't. The central problem of finding free hosting is unsolvable (although github - at least until it goes the way of geocities - offers hope).
But if the file is not available on a central server, its still available on the player who starts the game (and chooses the techtree from the many techtrees/versions they has locally). So if someone's hosting died, the mod could still be played gossip-style from player to player. Grass-roots replication.
And it may be that some people don't ever need to actually host their mods at all - this p2p approach will serve their needs well enough.
Basically, right now all the files are CRCed by the players when they join a game. (Its important to also track size.) But if they don't match, then the whole mod downloaded from somewhere. Go back a step. If they don't match, the individual sizes/CRCs themselves needed by the players can be compared. There are even ways to do this O(lg(n)) but that seems overkill - the list of files to be loaded and their metadata is very small, and run through ZLIB on the fly its even smaller. Only the files that differ need be downloaded. That download can go from classic hosting or over the game server link. This is not such a massive leap as it may sound.
It also covers de-dupe inside the mod.
Having written a packing tool, I know empirically that the biggest impact of download size of existing mods is de-dupe of whole-files within a single mod. The major compression advantage of (solid) 7z over zip or tgz evaporates and they are much closer.
And what about copyright problems which might show up in some of the mods? Will these mods suddenly disappear?
It would be tempting to add a license tag as meta-data to each file. Perfectly doable. And of course the absence of a tag can infer something about the rights too. You might be able to insist, for example, that you never download a file that is not explicitly tagged with a license you accept. And of course the tools for creating new content may insist that the person starting the game state the content type the first time it is encountered. Etc.
To make it clear, the existing file structure can be preserved. I would advocate a stricter naming convention the encoded information about the version of the mod and its techtree in the name of the root folder for it, but that's not strictly necessary. All the duplication and copying of files is only on the authors machine.
And in the game, on the mod menu, they can select a techtree that is changed locally, and hit the 'package' button. And they get a nice zip or other file which contains no duplicate files, and instead symbolic links and such. (My mod packing tools actually rewrite the xml inside the archive to point to single instances of files etc.)
Or they can distribute it P2P simply by playing with others. But if they get it hosted somewhere and it gets into the master-list as already in MG, then people can play it without needing to play with someone who already has it, epidemic-like.