Everything they do is to try and keep people playing longer and spending money, as much as it sucks for us the player.
Allied races is a cash grab, they could've done something like make it free for existing characters but you've got a whole paid system for that..
Allied races are supposed to feel like an accomplishment when you unlock them, which is kind of the whole point of playing an MMO. You put in your time and effort and you get your reward and feel good about it. With the amount of regular content updates in Legion and no doubt in BFA, it's unfair to say Blizzard are cash grabbers. They keep the game relevant for 2 years which is amazing if you are not thinking of it in terms of subscriptions.