Right, this is not exactly scientific, just my take on things (and excuse the poor quality image, it's the best I could do with an online converter). Here's an approximation of turns 7 & 8. The lines taken by the two drivers are also my estimate from watching the various clips.
Vettel's line is very similar to the normal racing line. Karthikeyan had to slow firstly for Hamilton to pass, on the entry into turn 7, and then the Marussia followed Hamilton through between 7 & 8, making karthikeyan stay left. He then came over towards the middle of the track at turn 8, but still some way left of the racing line, before going wide again to let Vettel through. You can see the spray come up from the astroturf as he goes over the left hand kerb. As far as I can see, it was fairly predictable that he would start to move right a little on the exit of turn 8, as it would be the natural extension of the line he had taken through the two bends; anyway, he couldn't have gone any further left as he was already on the kerb, which he would no doubt have been wanting to get off as soon as he could. He was also in an unsettled car, with wet tyres. Perhaps Vettel just didn't allow quite as much room as he might have; a racing incident and no more, in my view.
As to whether Karthikeyan 'chose' to let the leading cars through at an awkward point and could or should have waited till the following straight, I wonder if he really had any choice at all. He (and others) has been criticised in the past for waiting too long, and holding people up, and he can now see Hamilton and Vettel bearing down on him. What should he do? These days, backmarkers have been conditioned to jump out of the way to allow the leaders through as soon as possible, so as not to be penalised for ignoring blue flags.
I'm no apologist for Karthikeyan, in fact I have questioned whether he deserved his place in F1 following some of his mobile chicanery at Melbourne and in the past, but in this instance I think he has been rather unfairly criticised.