What they should do is let a Pokemon be able to recall any move it has ever learned by level up without going to the move relearner. I can't think of any reason for that guy. Another slight annoyance is the inability to recall deleted egg moves. Sometimes I'd want to experiment with a different moveset but can't touch the egg moves. A slightly expanded Pokemon data structure (they're not too many egg moves per specie so use a word-sized bitfield: set bit 1 if egg move 1 was learned etc.) would allow the game to check which egg moves were learned even if they were deleted. Now that they're on to a more powerful system with more cartridge storage and RAM, it's time to give us some conveniences. (yeah right..lol)
They don't want you, say, in the middle of the elite four just to be able to switch around your moveset so you always have the right moves. You need to learn to formulate the best all-around moveset so that you wouldn't need to change anything and you can utilize your whole team.