[…] I find particularly distasteful […] the practice of putting the names of people who had nothing to do with the publication on papers.
I heard an argument that I find difficult to take down: even though you may write a paper alone, the research it is based on probably wasn't done alone. Even if you did your research alone, it likely stands on the research done by your lab mates. Even if it doesn't, you don't really work alone. You talk to people, most notably your advisor, or your research director (depending on your position). Whether you know it or not, those conversations gives your insights that shouldn't go un-thanked.
The bottom line is, it's a team, and the signature should reflect that (non-)reality.
I don't buy that argument. A person who is responsible for nothing more than the research research ought not to be an "author" of the paper. Research is nothing but data; the choice of what research to use, and the conclusions drawn from that data, are what make the paper.
The argument you cite does not support listing all those folks as authors. For example, one could have papers "Authored by X, featuring original research by J, K, and L".
Oh, I don't buy that argument either. But I have heard it in more subtle forms. I just didn't know how to convince the very people that use it of its invalidity.
For that matter, your suggestion to classify the various authors by the nature of their contribution should shatter my argument to pieces. Adding something like "supervised by C" should blow those pieces to smithereens.
I heard an argument that I find difficult to take down: even though you may write a paper alone, the research it is based on probably wasn't done alone. Even if you did your research alone, it likely stands on the research done by your lab mates. Even if it doesn't, you don't really work alone. You talk to people, most notably your advisor, or your research director (depending on your position). Whether you know it or not, those conversations gives your insights that shouldn't go un-thanked.
The bottom line is, it's a team, and the signature should reflect that (non-)reality.