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.
Make Attr::value private.
Simplify Element::set_attribute for its remaining callers.
Support for extension methods, getResponseHeader(), and an extra error
Make sync requests not crash / remove associated leak
Empty methods are not allowed
auto merge of #2613 : Manishearth/servo/xhr-wpt-methods, r=Ms2ger

For [XMLHttpRequest/open-method-case-sensitive.htm](https://github.com/w3c/web-platform-tests/blob/master/XMLHttpRequest/open-method-case-sensitive.htm), [XMLHttpRequest/XMLHttpRequest/open-method-insecure.htm](https://github.com/w3c/web-platform-tests/blob/master/XMLHttpRequest/open-method-insecure.htm), [XMLHttpRequest/XMLHttpRequest/open-method-responsetype-set-sync.htm ](https://github.com/w3c/web-platform-tests/blob/master/XMLHttpRequest/open-method-responsetype-set-sync.htm) in particular. `getResponseHeader()` is used by a lot of other tests (the harness echoes most of the metadata in the response headers, which is tested on this side) 

The sync changes fixes half of the timeouts to give meaningful results.



Blocks #2525
Fix some deprecated warnings for to_owned()
auto merge of #2617 : Manishearth/servo/string-warn, r=Ms2ger
Implement Console.assert.
Support GlobalEventHandlers.onclick.
auto merge of #2619 : Ms2ger/servo/onclick, r=jdm
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.
Remove PaddedUnsafeFlow.
Fix type the type name.
Remove 'LayoutNode.pad' field.