Use the Deref traits for FlowRefs.

This patch switches FlowRefs to using the Deref and DerefMut traits, instead of
the custom `get` and `get_mut` functions.
auto merge of #3686 : cgaebel/servo/deref-flows, r=pcwalton

This patch switches FlowRefs to using the Deref and DerefMut traits, instead of
the custom `get` and `get_mut` functions.
Remove obsolete comments about cycles.

The tracing setup has ensured that the cycles can be collected for a long time
now.
Fix append_style reftests with incremental reflow turned on.

@pcwalton r?
Fix whitespace_pre with incremental reflow turned on.

This implements fragment merging, in order to incrementally reflow linebroken
text. This makes the `whitespace_pre.html` reftest pass with incremental reflow
turned on with `-i`.
Issue #3236 - Implement timers (setTimeout/setInterval) for workers
auto merge of #3691 : Ms2ger/servo/cycle-comments, r=jdm

The tracing setup has ensured that the cycles can be collected for a long time
now.
Add the comment about to use `mem::transmute()` for values contained in DOMRefCell.
Throw DataCloneError from worker postMessage if structured clone fails

This fixes #3248.
auto merge of #3692 : cgaebel/servo/fix-incremental-append-style, r=pcwalton

@pcwalton r?
Removes Node.unsafe_get_flags().

`Node.unsafe_get_flags()` returns `*const NodeFlags`,
but `NodeFlags` has only `u8` length.
We should just returns a raw value instead of any pointers.
Use DOMRefCell<T> for HTMLInputElement's field that is borrowed from other tasks.
auto merge of #3662 : mukilan/servo/worker_timer, r=jdm

Closes issue #3236
auto merge of #3689 : cgaebel/servo/working-incremental-flow-construction, r=pcwalton

This implements fragment merging, in order to incrementally reflow linebroken
text. This makes the `whitespace_pre.html` reftest pass with incremental reflow
turned on with `-i`.
auto merge of #3693 : ehsan/servo/3248, r=jdm

This fixes #3248.

r? @jdm.  Please review for mistakes mercilessly!  Also, I got a host of test failures when running the worker tests, not sure if these tests are expected to pass locally or not.
auto merge of #3694 : saneyuki/servo/node, r=jdm

`Node.unsafe_get_flags()` returns `*const NodeFlags`, but `NodeFlags` has only `u8` length.
So We should just returns a raw value instead of any pointers.
Add unifying #[dom_struct] attribute (fixes #3667)
Use #[dom_struct] everywhere
Make auto-derived JSTraceable have #[inline] methods
layout: Remove `FontStyle` in favor of using the font style struct
directly, and optimize `get_layout_font_group()` to use a small vector.

Seems to be a 38% layout win on a site I tested with a lot of text.