Split StyleSurroundData::padding into four individual Lengths.

In StyleSurroundData, the padding longhand properties are stored in a
single LengthBox. This makes it difficult to generate because the
generator assumes that properties don't share storage.

This patch splits the LengthBox padding into four Lengths:
padding_{left/right/top/bottom}. This enables us to generate
the padding properties properly.

This patch also adds PaddingEqual helper functions to check if two
margins have the same value and changes the callsites to
ComputedStyle::Padding() to cater for the fact that the LengthBox has
been broken into its individual Length components.

BUG=628043

Review-Url: https://codereview.chromium.org/2834603003
Cr-Commit-Position: refs/heads/master@{#466582}
9 files changed