Split layout code into a separate crate.
Implement Location.search.
Split compositing/pipeline/constellation code into separate crate.
Fix incorrect libcompositing dep.
Make some DOM members private.

I have not reviewed if this is the complete set of members that can be made
private.
Remove some into_owned calls.
Mark some unused fields.
Remove the pointer to the Rust object in Root.

It is already stored inside the jsref field.
Merge pull request #2729 from Ms2ger/warnings

Fix some build warnings in the script crate; r=jack
Fix typo
Merge pull request #2733 from tavva/fix-typo

Fix typo
Update wpt expectations, include XHR in the WPT run
Merge pull request #2730 from Manishearth/expectations_up

Update wpt expectations, include XHR in the WPT run
Remove deref_mut from Untraceable/Traceable (fixes #2736)
Update submodule pointer and code to match interface change.
Merge pull request #2738 from glennw/azure-update

Update submodule pointer and code to match interface change.
Merge pull request #2726 from jdm/layoutsplit

Split layout code into a separate crate.
Add parsing of `overflow: scroll` and `auto`.

Elements with overflow scroll/auto are not yet scrollable, but they will be
clipped correctly (like `overflow: hidden`).
Remove unused Fragment::needs_clip method
Add a FIXME comment for #2742