IMO, the current experience system has a number of flaws:
1) The current values are overly complicated. It has level ups at experience amounts such as 6215, 23726, etc. that are impossible to memorize. (not necessarily a bad thing, just an oddity). The actual flaw in this is that the values are seemingly random, rather than following any numerical pattern.
2) Heroes are set at nonstandard amounts. As far as the last time the wiki was updated (I've yet to receive any updated information, either) is concerned, different races heroes level up at different XP amounts. It's possible this is true for regular units too, but I haven't found any evidence supporting or against this.
3) People have no control over it. The biggest thing reason people look forward to level ups in most games is so they can add things that they want. People get no such option in BC.
4) People can't stop it. It's very possible that people will want to keep their units at the same level in BC so they don't fight overleveled enemies just because their cannons are ridiculously high leveled. They should get that choice.
Because of these flaws, I find Exp and Leveling would be greatly improved by two changes that I would imagine are fairly simple to implement:
1) Standardization of exp amounts: All units of the same type (LI, HI, heroes etc) will require the same amount of exp to level up
(EDIT: Note that this does not mean all unit types require the same amount of exp). These numbers would follow a set numerical pattern starting at 3x, decaying by .25 per level (with the decay limited at 1.25x, which would take place at level 10), rounded to three significant digits at each level prior to calculation of the next. Basically, the multiplier goes down over time, to an extent, so that at high levels you aren't just getting to extremely ridiculous xp requirements.
2) Controlled level ups: Players can choose to wait to level up until they feel like doing so (units still gain xp while waiting). When they level up, they get to choose between one of two options: level up with a random stat leveling up like the current system, or choose to spend 1.5x as much Exp as would normally be needed so they can choose what stat to level. They can choose this on a level-by-level basis, so choosing it once won't affect your future or past level ups in any way.
3) Adjustment to exp usage: In order for #2 to work correctly, exp must be tracked in two different forms: unused exp and total exp. Exp will be a spent resource, to be used at each level up. Unused exp is exp you can put towards your next level up, while total exp is the total amount of exp you have earned.
To address these changes for those players who have already leveled their units, a "reset" button should be added to units, which can only be used once per unit without spending gems. It would be a replacement for the current reroll function, allowing you to redistribute your xp as you see fit (whether you choose to go for random level ups again as is the current standard, or spend your xp on choosing your stats, or any mix of such)
The end result of the exp adjustments (shown with LI):
Compared to the current exp system (shown with LI):
The advantages of this end result:
1) Exp is now easily calculated for current & future levels, users can finally understand how it's done
2) Exp amounts don't look like random strings of numbers
3) High level units don't ridiculous amounts of exp from compounding unknown multipliers. Exp cost is still relatively large, but not impossibly so.
4) Users get control over when to level up
5) Users get control over how they level up, without said control to being overpowered
6) All units of similar types rank up at similar exp costs
7) Rerolls of unit levels can be carried out in unique ways
With a standardized exp system in place, the suggestions for being able to change between races would be much simpler to carry out.
This is obviously not a huge change to the way the game will work. It's a few tweaks to a central part of BC, that should overall improve the quality of the game and further refine it. I don't expect this to garner much attention because of it's nature, but hopefully it's approved of and the admins consider it worthwhile