Cleanup mac specific TextLayout measurement helper

As far as my analysis goes the rebaselines are needed due to the different kerning behaviour. The textLayout based measurement returns kerned values when measuring substrings of a run. When not using textLayout, we create a new run and pass that to Font::width which then returns a value that is not kerned for only the last character in the run. The new behaviour is consistent with the behaviour on non-mac, thus I don't see an issue with changing this. Additionally,  RenderText::width and ::widthFromCache behave the same way, creating new runs for measurement.

BUG=329543

Review URL: https://codereview.chromium.org/110313003

git-svn-id: svn://svn.chromium.org/blink/trunk@164915 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Pull deferred compositing updates into a setNeedsCompositingUpdate function instead.

This patch intentionally keeps all equvialent behavior for now, and
leaves possible semantics-altering cleanups for other patches.

BUG=332248

Review URL: https://codereview.chromium.org/120383003

git-svn-id: svn://svn.chromium.org/blink/trunk@164916 bbb929c8-8fbe-4397-9dbb-9b2b20218538