I prefer Glicko and Glicko-2 over Elo. It's been 10 years since I implemented it and played with the math, but if I remember right it is far more accurate in games that have significant amounts of RNG that leads to lucky wins/loss events. But if a player proves they weren't lucky by being consistent it still is just as malleable as Elo. So perfect for a game like Hearthstone.