I like the system for unlocking them fine, but I think they should start at different points.
Makes no sense to unlock a new race, then that race has to play through past events they were never a part of to level up. Ideally they'd have a DK style little intro scenario (lot of work if there's a lot of races in an expansion, I realize) and then basically be doing the content of the expansion they're introduced in.