layout: Remove `FontStyle` in favor of using the font style struct directly, and optimize `get_layout_font_group()` to use a small vector.

Seems to be a 38% layout win on Time Cube.

Other browser engines typically do not duplicate the information in the font style struct. `FontStyle` actually predates @SimonSapin's CSS selector matching library. It's time to get rid of it!

r? @glennw