this is quite close to how i would implement shields (i'd implement heavy shield slightly differently myself) but i'd much prefer shields to be their own category of proficiency rather than being tied so tightly to the other specific armour tiers, so that you could end up with things like default Cleric with Heavy Armour proficiency who can't use shields, or a Monk with no armour proficiencies but who does use shields.
as it is, shield proficiency is basically Medium+, and i'd like to see that + to be able to be, or not be, alongside any other level of armour proficiency.