Frankly, I think a themes approach can do all of the above, given the assumption that every additional theme adds flexibility (in terms of new options for character powers and abilities) but little to no extra power.
A class then becomes a special theme in which there is always at least one option to choose from when you gain new powers and abilities. The simplest character then becomes one with just a single class theme, and the simplest classes just present a laundry list of abilities gained by the character at each level, with no choice required on the part of the player.
Under such a system, sub-classes can be represented by a theme that grants the character additional choices for powers and abilities at certain levels. The player could choose a benefit from the original class or from the sub-class theme. This would make the character more complex, as he would have more than one theme, but (ideally) not more powerful than a character with just the base class theme. As a side note, multiclassing can also be done by giving the character access to two class themes.
Prestige classes then become themes with prerequisites, either mechanical or role-playing. Only a character who meets the prerequisites can select that theme.
The advantage to the themes approach is that you don't need a separate sub-class for essentially the same concept, e.g. a two-weapon wielder that could be either a figher or a rogue (or, indeed, a wizard who just happens to have a more martial bent).
I'm thinking along these lines as well. I'd XP you, but apparently it's too soon.
I could see a character (at a roughly 3.5-like complexity setting) as consisting of:
A race (inherent features only)
A class (a structure built on top of a theme)
Two additional themes
All classes are themselves associated with at least one theme (defining subclasses). The abilities of the class' theme are the main source of a character's abilities, and the structure of the class determines the how and when of other advancement. (Classic jack-of-all-trade types, for example, might be able to draw from their non-class themes more frequently.) It is also possible some themes might be compatible with more than one class (e.g. necromancer theme as wizard or cleric).
Themes encapsulate a bundle of mechanics. The themes cover cultural background, professions, racial progressions, inherent or acquired templates, multi-classing, and later in the game "prestige classes". A principle ability is gained when a theme is taken, and all others are optional avenues of character advancement. Although all classes have associated themes, most themes will not have associated classes. Racial themes probably should be subclasses, however, so that a person who wants to play an "Elf" in that most classic sense can absolutely do so. Multi-classing is a snap.
Finally, I'd make all themes contribute to a character's starting package of fundamental stats (skills, proficiencies, starting hit points, and maybe even hit point progression or initial ability score bonuses).
An example character in this system (with placeholders and illustrative guesses):
Race - Dwarf (Gains Darkvision and "Stout")
Class - Fighter [Tactician]
Theme1 - Dwarf
Theme2 - Smith
Tactician*:
"Tactical Insight" ability
3 hp + 1/level
Insight skill. Has access to Athletics and Perception.
Proficient in all basic weapons and a single martial weapon.
Proficient in light and medium armor.
*I imagine this theme defines a subclass roughly equivalent to the 4e warlord. As the dwarf did choose this as his class theme, Tactical Insight is the marquee ability for the character. Besides its most important mechanical properties, Tactical Insight might also specifically let the character use the Insight skill for checks related to military tactics, which is presumably too specific a category to merit its own skill. This could just be a role-playing aid, but perhaps some Tactician abilities even call for these checks. Either way, a theme is the perfect place to make such an extension explicit.
Dwarf*:
"Impervious" ability
3 hp + 1/level
Has access to Dungeoneering and Endurance.
Proficient in all basic weapons, and a single martial weapon.
Proficient in light, medium, and heavy armor.
* I'm treating this as though it were a fighter subclass which might call to mind the BECMI dwarf. Optional abilities might include improvements to "Stout", some form of magic resistance, etc. This particular dwarf didn't take it as a class, but could still cherry-pick a few classic abilities along the way.
Smith*:
"Perfect Forge" ability
2 hp + 1/2 levels
Endurance, Profession (Smithing). Has access to a single other skill of your choice.
Proficient in all hammers.
Proficient in light armor.
*I see most profession-type themes granting crafting abilities or the like, more skills, more flexible skill choices, as well as special skills that are all-purpose for whenever the player can justify them. I figure this particular theme eventually allows forging magic weapons, bonuses when using weapons you forged yourself, and so on.
(I'm played around with hp above, just to see how making them this granular might work. I prefer characters with starting toughness less than 4e but a little greater than other editions, while keeping the totals fairly small. I'm assuming no major changes to typical magnitudes of damage or the basic hp system, of course. I figure 3 +1/level for brawny themes, and 2 + 1/2 levels for everyone else. With three themes that puts the total spread from 6 + 1.5/level to 9 + 3/level. I'm assuming Con score is added at first level. The brawniest dudes would start around 29 hp, and the typical 10 Con wizard at 16. By level 20 that would be 86 for the scrappers, and 44 for bookish sorts barring stat increases, etc. I do like adding a theme in the midgame, but that would inflate it even more. I suppose one could start with just a single non-class theme, but that feels just a little too conceptually limited to me. Hmmm.)