Add initial support for the line-height property.

Line height is only based on the tallest box in each line and does not factor in the vertical-alignment. Improves whitespace handling by passing the whitespace state between function invocations.

There were too many changes on master to easily rebase. It was easier to merge to a fresh branch.

Here is the original PR: https://github.com/mozilla/servo/pull/509