I think a file with a particular extension would work well (e.g. modulename.desc - for 'description file'). But adding a .desc file for every core module would be bad - would clutter up the core /modules directory, and is not needed anyway, since there aren't that many core modules, and any decent server can cope with loading all core modules.
Wrong.
All modules should be in their own directories to begin with. I agree that all modules should have their own directory.
As far as the info file goes, we can have one for each module, starting with: DESC: This is the module description to show in admin/modules This can even be autogenerated for every existing module by running a one time script to extract that info from the module itself, similar to what Gerhard did. Later, we can add: AUTHOR: blah VERSION: blah DEPENDENCY: blat1 DEPENDENCY: blat2 DBCREATE: blah.sql ...etc. You get the idea.