This concept is brought up every so often becuase it would be really cool to enable. The problem with it lies in the fact that not all subclasses are created equal. What I mean by that is the different classes have assign different mechanical value to the subclasses in the class. Ranger for example relies on the damage boost from the subclass to keep it in line with other classes whereas Rogue gets little to no damage boost from its subclass and instead gets a few more utility options generally few and far between. So getting two ranger subclasses is going to be more valuable than getting two rogue subclasses.