Issue #3616577: Order the weighted admin lists by weight instead of creation order
Six admin lists showed content entity types that carry a weight, and none of them read it: a list builder that does not touch the query inherits EntityListBuilder::getEntityListQuery(), which sorts on the id key, so the rows came out in creation order and the weight field on the entity form changed nothing on the page it was set for.
Adds WeightedEntityListBuilder, which sorts by weight, then by the type's label key when it declares one, then by id so two rows tying on both come out the same way twice running. AllotmentListBuilder, PresetAllotmentListBuilder, PresetTariffListBuilder, ResourceTariffListBuilder, TariffClassListBuilder and TariffPresetListBuilder extend it.
yoyaku_preset_allotment declares no label key, which is why the second sort is conditional rather than hardcoded.
Config entities are untouched: ConfigEntityBase::sort() is weight then label already, so TenantListBuilder and the other ConfigEntityListBuilder screens were already correct. The placement module is untouched too: its screens build their own queries and already sort by weight.
WeightedListOrderTest covers a lighter weight coming first when the rows were created heaviest first, equal weights falling back to the label, and a type with no label key. All three were seen to fail against the unfixed code and pass with it, on SQLite and on MySQL.
Documented as a design rule in docs/architecture.md. No new strings, so the French catalog is unchanged.