Ganguly is a good test batsman but has not always looked adept to be in the Indian Test XI IMO.
The best thing would have been to have Dravid captain even thuogh it seems too severe on the guy and he is an introvert by nature so that some one like Ganguly may be replaced by some one like Yuvraj or some one of a better batting talent for tests.
Yuvraj should definitely have played more tests for India. I wouldnt say Yuvraj should replace the likes of a Chopra coz opening is a different ball game. You dont know if he will succeed or fail like several others at that number.
But the problem is, you dont just chop and change captains. Taylor in Australia should have played lesser tests than he did but even Australia who had suitable replacements back then in Waugh and Gilly later on couldnt just 'chop and change'. And Ganguly is doing a very good job as captain.
Its a big dilemna I cant find a solution to. Ganguly has not always looked good enough to hold his place in the test XI though his century in the first test in Australia (his best yet IMO) shows he has improved tremendously now, hasnt always looked the part.
As for the current scenario, Ganguly is batting well now and has gone out of his horrid for/phase of batting in tests. So it will be quite some time before the likes of Yuvraj get a chance sadly.