i'm still against locking classes behind the league level, it will bring more problems (everybody using the same class in the same league) and push players away from the game instead of incentivizing them. it could also bring reverse boosting in order to keep remaining in a determinated league
achievements unlocks are better because you have to work to optimize your ai and make one capable of winning AND do it with a particular circumstance. makes people work towards a reward :) also you can associate leagues with unlocks
player A unlocks a class x via achievements
since he has such class he is "stronger" than other ones and goes up in the leaderbord of that league
he gets a promotion to another league