In general, you pick feats for your character.
I don't think any one character would be "broken"; but certainly, it would be easier to min/max a specific character. (By taking all the best feats as soon as possible and forgetting about pointless ones.) All characters in the same party should have a similar power level, although the game may have a bias towards melee fighters, or ranged fighters, or sneaky thieves, or whatever.
I've looked it over and I think the feats need more pre-requisites (to keep abilities in a logical progression

). Such as:
Evasion
You are skilled at evading damage.
Prerequisite: Dex 13+, Tumble: 4+ ranks, Jump: 4+ ranks.
or something similar.
Casting spells could be like dis:
Take a feat and get access to the (restricted) skill Wizard Magic. The skill Wizard Magic has a whole bunch of things in it, such as: Casting a spell of x level means you have to beat a DC of x. Preparing a spell of x level means you have to beat a DC of x. The highest level spell you could prepare would be a function of your ranks in the skill, as would the number of times per day you could cast that spell.
Sorcerers could have a totally different skill: Sorcery. As above, but the ranks in the skill limits the number of spells known and the number of times per day it can be cast (although in a different fashion).
Although I'd have to do the math on the ranks and DCs and all that.