Propagate up the right bits of style damage

The call to propagate_up was lost in eb1b40db13a13c27269c57bad60433e0597bbbeb.
Print restyle damage for debugging
Get rid of reflow_all

This refactoring should not alter behavior.
Call Element::after_set_attr only for null namespace
Allow setting id, class, style without a full reflow

Instead we do selector matching again, then diff the style structs to set the
"restyle damage" bits which are used to prune reflow traversals.

Also don't force a reflow when timers finish, because individual DOM methods
should already take care of that.
Disable remaining reflow traversal pruning for now

We don't reuse Flow objects between reflows, so we have no old values to fall
back to.

I think this used to work because FlowContexts (as they were called then) were
stored in a DOM node's LayoutData and reused.  But it's possible that it never
really worked, and my testing when I landed the restyle damage code was
insufficient (I didn't understand the layout code nearly as well back then).
auto merge of #1394 : kmcallister/servo/style-damage, r=pcwalton

This fixes the computation of restyle damage on `color-change-text.html`, which can be seen with `RUST_LOG=servo::layout::layout_task`.

However we can't prune the layout traversals yet, because we don't reuse `Flow` objects between reflows, so we have no old values to fall back to.

I think this used to work because `FlowContexts` (as they were called then) were stored in a DOM node's `LayoutData` and reused.  But it's possible that it never really worked, and my testing when I landed the restyle damage code was insufficient (I didn't understand the layout code nearly as well back then).

r? @pcwalton
auto merge of #1396 : pcwalton/servo/acid1-reftest, r=metajack

r? @metajack
layout: Perform text decoration propagation per CSS 2.1 § 16.3.1 without
going to the DOM.