Import the WebIDL parser from Gecko.
Remove support for external interfaces.
Reinstate IDLCallbackType.module.
Add support for undefined default values for 'any'.

This also updates TestBinding to take into account the automatic default
for optional 'any' arguments and dictionary members.
Remove unsupported extended attributes from IDL.

These were silently ignored so far.
Implement Console.assert.
Implement HTMLIFrameElement.src.
Outside of compositor, store window size in CSS px

This fixes an issue where the CSS viewport was too large on high-DPI displays
because it was set to the window size in device pixels, instead of px.  This
patch ensures that the window size is converted from device pixels to px
before being passed to script/layout code.

The Window trait now exposes the window size in both device pixels and
density-independent screen coordinates, with clearer method names.
auto merge of #2624 : mbrubeck/servo/units, r=pcwalton

This fixes an issue where the CSS viewport was too large on high-DPI displays
because it was set to the window size in device pixels, instead of px.  This
patch ensures that the window size is converted from device pixels to px
before being passed to script/layout code.

The Window trait now exposes the window size in both device pixels and
density-independent screen coordinates, with clearer method names.
script: Inline `is_element_for_layout` and friends.

8% improvement on style recalc on Wikipedia.
auto merge of #2611 : Ms2ger/servo/webidl-parser-sync, r=jdm
auto merge of #2618 : Ms2ger/servo/console-assert, r=jdm
auto merge of #2626 : pcwalton/servo/inline-get-element, r=jdm

8% improvement on style recalc on Wikipedia.

r? @Ms2ger
Implement variadic arguments (fixes #1985).
Support union variadic arguments and add tests.
Avoid reallocations with variadic arguments.

Thanks to huon for pointing that out.
auto merge of #2622 : Ms2ger/servo/variadic, r=jdm
auto merge of #2627 : Ms2ger/servo/iframe-src, r=jdm