I'm not from the 'In Bob We Trust' camp--and certainly not a Montreal fan by any means--but I understand why he does what he does. Not to support his actions, but just to recap...
Theodore had to moved because his play was deteriorating along with the off-ice problems involving his family and the Hells Angels.
Huet was traded because he was about to become a UFA. You remember he signed with Chicago for the mega deal.
Kovalev got re-upped because of his regular season bounce back.
At the time, Price was highly regarded and he was, after the Habs' #1 draft choice. Pitt did the same thing anointing Fleury as their go-to goalie.
Gainey gave Carbo the horses. Carbo couldn't handle them.
In any case, Gainey owned up to his mistake in hiring Guy; and he has never shied away from admitting some of his moves were gambles.
Such is the life of a GM, and there are more than a few examples around the league of moves that can be second guessed.