Rework psuedoelement infrastructure so they can be their own boxes.
Code cleanliness fixes.
Factorize out cascade logic.