Reduce the number of times we call rustc in our Makefile #2327
auto merge of #2586 : ebalint/servo/2327, r=jdm
gfx: Add display list optimization to eliminate clipped items before
submitting them to Skia.

40x improvement in painting time on Wikipedia.
auto merge of #2588 : pcwalton/servo/display-list-optimization, r=glennw

submitting them to Skia.

40x improvement in painting time on Wikipedia.

r? @glennw
Use GlyphStore::char_len rather than constantly re-casting GlyphStore::entry_buffer.len()
Use bitflags! for RestyleDamage
Fix the vertical alignment error for img tag.
Use bitflags! for NodeFlags
auto merge of #2592 : june0cho/servo/fix_vertical_align, r=SimonSapin

It fixes the wrong vertical alignment for img element. (related to #2422, #2554)
Worked with @ryanc
auto merge of #2589 : bjz/servo/cleanups, r=pcwalton

@pcwalton r?

Might conflict with the rust upgrade - I can rebase later.
gfx: Binary search for the start position when iterating over the slices
in a text run.

This makes painting of text display items faster and matches what Gecko
does.
auto merge of #2584 : pcwalton/servo/binary-search, r=SimonSapin

in a text run.

This makes painting of text display items faster and matches what Gecko
does.

r? @SimonSapin
Don't use mem::transmute for the argument to CreateProxyHandler.
Remove htmlmainelement.rs again (re-fixes #2541).
JSON response support and some default headers
Squash a warning about deriving traits on a struct that contains a raw pointer.
Remove some code to support preffing off APIs.

We won't be using this feature in the near future, and the implementation is
not really Rustic.
Pass slices to CreateInterfaceObjects2 rather than raw pointers.
Remove the pointless terminator from ConstantSpec slices.
Store a slice in ConstantSpec, rather than a raw pointer.