Nitric oxide donors: biochemical pharmacology and therapeutics.