I'm not sure why some things seem to be alright as subclasses, but not as a background, instead (such as the gladiator). I get certain decisions (like duelist), but some subclass options seem odd.
There are a lot of concepts which could be both a class, subclass, background, specialty and even a race.
And in fact there
will be some concepts with multiple implementation, so that something will be both a subclass and a specialty, although most likely the core books will have only one implementation per concept (makes more sense to give space to more concepts in the core rather than more versions of the the same concept).
Race, class, subclass, specialty and background represent different things and use different mechanics, and what they each represent depends on such mechanic.
For instance, a "race" is currently a package of static features so it represents what you get at birth and/or during education i.e. culture.
A "background" used to give you skills (which progress with level) and a static trait which is mostly useful during downtime. Therefore it can be used to represent what you are
while not adventuring (or before adventuring), what is your role in society. (Backgrounds are changing now, but probably will retain their concept)
A "class" defines what you are
during adventuring. A class is a
progression of features that get better and better, and in order to get better you need to gain XP, i.e. you need to go adventuring. You can also use it to define what you are while not adventuring, but this is secondary, and always carried some traditional problems doing so (like "why does the academic wizard teaching spells and crafting magic swords in the city tower never gains levels from doing so?").
A "subclass" modifies its base class (although some subclasses are purely additive and could be even applied to a different base class) and therefore serve the purpose of creating variations in the fantasy world but provide a ready "package" that follows a concept, a certain specific
type of a character of that class.
A "specialty" currently is just a suggested bunch of feats, which may or may not be available individually (this can be DM's decision, especially when creating specialties to represent prestige classes or paragon paths). As such, a "specialty" is by definition something you can take as much or as little as you want, and you can freely cherrypick from different specialties. There might be some progression, but it's not always going to be the case.
These give plenty of methods to customize your characters, in small and big ways, either using packages or cherrypicking, and in a progressive or static way.
-----------
The only thing which is still left out of the picture is,
how do you represent concepts that should only be available at mid or high levels?
Imagine you have an "Order of the Archmages of XYZ", in 3e you would represent that mostly with a prestige class, in 4e with a paragon path... the only way suggested in 5e so far is to make a specialty, because class/subclass/background/race are all choices that start at level 1 with the current rules. You could make a class that can only be taken with multiclassing after a certain level, thus basically re-introducing prestige classes, but at the moment there is no such thing. You cannot make it a subclass of Wizard, unless you mess up a bit and allow to swap a previous subclass through retraining rules.
Right now, the only way to do it would be with a specialty, however it might not be always easy to do so for every concept...