When rendering to PNG, draw to an FBO rather than default framebuffer.

This means that it doesn't matter if the window if partially placed
off screen when reftests run.

Fixes #3470.
Remove temporary wptrunner hotfix.

This was added in anticipation of a wptrunner release that includes the change.
Improve acid2. Fix line height calculation. Text fragments get correct enclosing element style.

* Enabled acid2 on mac + linux. Updated the reference image. The only difference from the
real acid2 now is the paint order and a 1 pixel horizontal offset on the nose.
* Change line-height to be calculated correctly.
* Apply enclosing element style to text fragments.
Don't render backgrounds for text fragments.
Made some DOM fields private.

Relevant to #2242.
layout: Support any `display` property in generated content, and allow
tables to clear floats.

Improves the GitHub header.
Improve the correctness of Root lifetimes

Use the new lifetime bounds feature of Rust to enforce that the
RootCollection field of Root outlives the jsref field. This still
doesn't enforce that the Root itself outlives the jsref field, and
doing this would require some sort of init dance.
Fix /python/servo code formatting.

(My editor screams at me for flake8 lint errors.)
Convert &JSRef -> JSRef for the PrivateNodeHelpers trait
Convert &JSRef -> JSRef in DisabledStateHelpers
Merge pull request #3494 from SimonSapin/flake8

Fix /python/servo code formatting.

Reviewed-by: larsbergstrom
Handle dynamic addition of attributes

Handles dynamic addition of attributes to <link rel=stylesheet>
elements.

Fixes #3361
Merge pull request #3495 from zwarich/private-node-helpers-jsref

Convert &JSRef -> JSRef for the PrivateNodeHelpers trait

Reviewed-by: jdm
Merge pull request #3432 from gilles-leblanc/issue-3361

Handle dynamic addition of attributes

Reviewed-by: jdm
Merge pull request #3489 from ProgramFOX/issue2242-2

Made some DOM fields private.

Reviewed-by: jdm
Add an extended_deref method to JSRef

The extended_deref method will take a JSRef<'a, T> and produce an &'a T,
in contrast to the standard deref method that takes an &'b JSRef<'a, T>
and produces an &'a T. This is useful when avoiding passing a JSRef by
reference.
Make the AttrHelpers trait use extended_deref
Make the DocumentHelpers trait use extended_deref
Merge pull request #3493 from zwarich/root-lifetimes

Improve the correctness of Root lifetimes

Reviewed-by: jdm
Merge pull request #3496 from zwarich/disabled-state-helpers-jsref

Convert &JSRef -> JSRef in DisabledStateHelpers

Reviewed-by: jdm