This is not a revenge game, this is a game about revenge. I understand why people are upset about how things unravel in this game, but to me, it was the right decision. Things are not supposed to go as you want them to go, they just happen, and it's up to you if you want to get stuck on them forever or keep going. I don't think they made you play as Abby just for you to feel sorry for her and justify her actions, but to see that she has people she also wants to protect, and to see Ellie from that perspective was just painful, because you consider her the hero of the game, but what they tried to convey is that, when you hate, there are no heroes, there is just destruction; that when we hate, we have a tendency to dehumanize the other and to consider them different than us, unworthy of our love, so you just put the apart and start calling them "The enemy".
Sure there were minor details that gave me a bad impression at first, but they started to make more sense after the story went on.
They manage to relay during the whole story the moral dilemma that was only presented during the last part of the first game with Joel's resolution, and I think that's why there are so many divided opinions about this. Sometimes you love it, sometimes you hate it, like life itself. This story it's bigger that its characters, and the proof of it it's hidden on Ellie's last words to Joel: "I don't thing I could ever forgive you... But I can try"