A few years ago, when the holon sets ere around in TCG and thought of a way this could be implemented into the game. I came up with the idea of giving some pokemon a few extra types that could be implemented once you get to a certain point in the game. For example, you could change Salamence to a dragon/flying type to a dragon/fire type. Now Salamence would have STAB with the fire moves it usually caries, though it would now carry a weakness to ground. To take it further, some pokemon could only learn cetain moves when they were a certain type, such as fire type salmence carrying flare blitz, while it would lose the always useful roost.
Just a thought..
Just a thought..