I'd experiment with multiclass as the default.
Split classes into paths (archer ranger, melee ranger, beastmaster ranger; illusionist wizard, necromancer wizard, conjurer wizard...) and let everyone pick two paths, one from your main class and one from a second class. If you don't want to multiclass, just select two paths from the same class.
At first level, you get something from both paths. After that, something from the primary path every even level and something from the secondary path every odd level.
Makes more flexible characters, and you only need to fill the progression table with stuff at every second level.
Very interesting idea.