Maybe all those really stupid and seemingly deliberate annoyances like the removal of the lucky egg Codraroll mentioned are part of a secret master plan to make us all buy the new ultra games when they come out.
Not that Game Freak has ever admitted this, but I for one think it's pretty plausible, and a practise they've been doing for many years now.
Game Freak always tries to sell you the next Pokémon game. To do this, they employ two types of selling points: New adventures; and new features, bells, whistles, and other cool things that will keep you occupied.
A new generation is sold by virtue of new adventure. More, never-before-seen Pokémon, a new region, new characters, new mechanics, etc. This is delivered by the base games, which are otherwise pretty bland. Little postgame, poor grinding options, narrow Pokémon selection, etc. But then again, the new games do have new Pokémon and new moves. And that makes them so much better than the last games!
Along come the next games in the same generation. Same graphics, same mechanics, an only marginal number of new Pokémon, same region and mostly the same characters. But this is made up for with new areas, a much more expansive postgame, new facilities, the Elite Four can be rebattled, there are Move Tutors, and a bunch of small, convenient features. It's easier to train Pokémon, you can catch a bunch of legendaries... these games have it all. And that makes them so much better than the last games!
And then, at some point, the next generation. All the convenient features of the previous game are removed and seemingly forgotten. We're back to a handful of available legendaries. The postgame facilities are stripped down to the basic Battle Whatever. The Elite Four might not be updated when you fight them again. The Pokémon selection is less diverse than in the last games. There are no Move Tutors. All these little features already have their code written (it's largely a matter of copy/pasting from the previous games), but for some reason Game Freak didn't bother to put them in. But... then again, the new games do have new Pokémon and new moves. And that makes them so much better than the last games!
It's not just a matter of designing a game that is better than the previous game. It's also a matter of designing them so the next games can easily be made better. We could have had BW2's insane diversity of features in XY and SM, for instance. A second run with updated rosters and movesets for the Elite Four would take roughly an afternoon to implement. The necessary code was written for FRLG, and hasn't changed that much since. Coming up with updated teams is also something any devoted Pokémon fan could feasibly do in an hour or two. Same goes for Move Tutors, there could have been
dozens of them if a single coder was put on the case for a couple of days.
They're not omitting these features because it would take time or R&D to implement. Again, the code framework is already written. They are holding them back so that when the next games have them, they will look better than the current games by comparison. And the next games after that have new Pokémon as their main selling point, meaning that the lack of the extra features won't impact sales to a meaningful degree.