Make :first-child always be the first child, i.e. the leftest one in LTR and the rightest one in RTL.
We were not propagating direction changes in some places, evidently. Now we do.
This tests that horizontal boxes flip their child nodes according to text direction to maintain the left-to-right ordering of child nodes for both text directions.