I am not so sure I would support the legalization of heroin. At times I have expressed support for the Gore Vidal approach, i.e. legalize all drugs and provide them at cost. In any case, I fully agree that drugs ought to be decriminalized and treated as a public health, not a criminal, issue.
I just think it's intellectually dishonest to pretend that all drugs are the same. Consider, for example, the ratio of the therapeutic dose (or, I guess, recreational dose) to the lethal dose. A very small amount of marijuana or LSD causes the intended effect, yet it's virtually impossible to die from overdosing on these substances. Clearly this is not the case with alcohol, cocaine, heroin, etc.
I'm not trying to argue strongly for tiered classification of drugs, but I am saying that it's not obvious to me that we should just treat them all the same. There are more-or-less objective measures that we can use to establish their risk to the individual and society.