I've had people wanting me to put that in my game too, but I had to refuse. Why?
Because (in my opinion anyway), having one Pokémon being able to learn 8 moves would screw up competitive battling. You wouldn't have to choose your moveset carefully, since you could use all the moves you wanted. For example, a Gengar with HP Ice, Thunderbolt, Shadow Ball, Explosion, Mean Look, Will-o-Wisp, Hypnosis, and Focus Blast would be virtually uncounterable, by crippling one Pokémon with Hypnosis, any physical attackers with Will-o-Wisp, KOing most Pokémon with its 4 special attacks, and KOing Blissey and friends with Explosion. As well as being able to trap anything it wants to with Mean Look.
Normally, I'd usually have to take a pick of 4 out of those, sacrificing, for example, type coverage for status. But with this, it means I don't have to get rid of anything, making the Pokémon with awesome movepools stand out even more over more predictable Pokémon like Yanmega.
Unless you plan on completely changing the battle system, I don't think it's a good idea.
Yes, see exactly!? But when it comes to customizing your pokemon, 4 moves are simply not enough. Your restricted to much. So thats why its taken me so long to come up with this system. I was on the verge of not even including this, but at the last minute, the light bulb finally turned on. But again, there was to much restriction, and thats why I created the maturity system.
Listen, in the anime, when there would be a pokemon battle, and one of the trainers would send out an extremely strong pokemon, you would know that its a strong pokemon just by looking at it. And then, when the trainer with the weak pokemon thought that he/she was about to win the battle, the other trainer would surprise him/her with a move that they kept secret, completely turning the tables, resulting in a much more exciting battle.
With this system, I feel that it correctly balances the battling system, and also makes battling more fun, by introducing even more anticipation (when there was about 0), and enabling more customizable pokemon.
Now, yes, Pokemon battling will become extremely harder when your pokemon start fighting other pokemon that can learn 6 or 8 moves. Yes, there could be a Gengar with all those moves, but then there could also be a Tyranitar with even better moves. And also, all pokemon have stat bases, meaning, some pokemon will have better hp, or attack than others. So yes, it may seem dramatically more harder, but it actually isn't. This really levels out to be a really balanced system.
Also, many many pokemon fans hate battling in the game, why because its almost "boring". Why is it almost "boring", because theres to much restriction. So, by creating this, people will enjoy battling even more. The feel of unknowing, and anticipation in a pokemon battle will be immense, and this system will truly test whether or not if you are a good pokemon battler. This will test if you are a fully prepared trainer in any situation.
And finally, thank you!? You asked and stated your argument extremely well, and I have really enjoying posting this, so props to you man. :D