Introduce a basic shared task pool, and use it for image decoding.
Fixes the table_percentage_width_a.html reftest with incremental reflow turned on.
Dump the flow tree with println, instead of error
auto merge of #3715 : cgaebel/servo/fix-table-percentage-width, r=pcwalton

This also enables incremental reflow by default. \o/

r? @pcwalton
Update rust-cssparser to revision required by cssom branch.
auto merge of #3745 : glennw/servo/update-cssparser, r=jdm

r? @jdm
Improve logical geometry formatting

Logical geometry is complicated, so the string formatted output is
verbose. This means that flow tree dumps often go well beyond the
edge of the terminal screen. With a simple notation, we can shorten the
output and make it slightly easier to read. This notation also makes it
more similar to the formatted output of Rect, Point2D, and Size2D.
gfx: Update rust-azure to pick up arcs, gradients, and subpixel text
Update rust-core-text, handle empty font collections. Fixes #3703.
layout: Rewrite text and inline fragment handling during flow
construction to avoid cloning and moving flows so much.

Besides amounting to a 5%-10% win on a page with a lot of text, this
simplifies and refactors the text layout code.
layout: Don't destroy the flow tree when resizing the window
gfx: Make fonts that fail to match hit the cache too.

50%-100% layout perf improvement on CNN.
gfx: Don't needlessly push and pop clip rects all the time.

15% painting improvement on CNN.
Update toml.py to upstream 1069d2449760525535ca77514a92e9237ee0deaf
auto merge of #3750 : glennw/servo/fix-3703, r=pcwalton

r? @pcwalton @metajack
Enable Opera's script scheduling tests.
auto merge of #3754 : Ms2ger/servo/enable-script-tests, r=Manishearth
Add an option to validate display list items

When this option is enabled, the layout task will print an error when
display list items draw outside their owning Flow's position rect. This
will make it easier to detect layout errors before they break rendering.

This is a command-line option for the moment, because we violate this
rule quite a bit still. Once all bugs causing this are fixed, we can be
more aggressive about enabling the option.
Add an option to show debug fragment borders

This is quite a bit cleaner than abusing the rust debug functionality.
If we start collecting too many debugging options in the servo
executable we could opt to organize them into a single option.

Fixes #2263.
auto merge of #3722 : pcwalton/servo/flow-construction-overhaul, r=glennw

This is a grab bag of performance improvements that significantly improve style recalculation, layout, and painting on a few static pages.

Let me know if you'd like me to split this PR up.

r? @glennw