I was gonna go for a short version but the need to rant got me. I'll try to be as impartial as possible but still, apologies if there's any bias
What Hamilton did was not cool. It is on the rulebook, yes, that the lead car controls the pace after a SC goes lights out. It is also true, from the sporting regulations, article 27.4, that "at no time may a car be driven unnecessarily slowly, erratically or in a manner which could be deemed potentially dangerous to other drivers or any other person". Hamilton has played this tactic many times, today it caught someone out. I do firmly believe he wasn't trying to have Vettel ram into him, rather just unsettle his cool to get a jump start, as he did on the 1st restart. It's one of many, let's call them "mind tricks" that he does. He did them with Rosberg, he'll do them with Vettel. That unnecessary slowing down of the car deserved a penalty, in my opinion, a drive through.
HOWEVER, what Vettel did is just, well to put it lightly just plain idiotic. He didn't bump into him on purpose, he got alongside him and LET GO off the wheel to wave hands at him, italian style. It's that letting go off the wheel that causes the car to bump. To me this is even more serious, because the guy actually gave up control of the car in order to vent his frustration, during an actual race! I've been a tifoso all my life and I had a soft spot for Vettel from the start, but on Sunday, he deserved the black flag. Simple. You do stupid things, you endanger others, you get a DQ. That is it.
What's funny is that if he hadn't done that, he'd have won, provided that Hamilton's headrest was going to fail anyway. He might have even been able to raise a claim with Whiting and possibly got Hamilton a reprimand at least. Right now, as a Ferrari fan since birth, I am angry at Hamilton, yes, but utterly livid at Vettel.