Associate ResourceTask with UrlProvenance
auto merge of #2152 : jsanders/servo/fix-inline-css-resource-task-failure, r=jdm

Fixes #2121

I thought this would be better than passing an `Option<ResourceTask>` to `parse_css` because it avoids having to handle the potential failure at runtime when unwrapping.

No test included, but the error was reproducible by running content/test_getBoundingClientRect.html, and this fixes it. Glad to find a way to add an explicit test if need be.
Introduce some (commented-out) tests for enumeration codegen.
Rewrite FindEnumStringIndex to distinguish 'value not found' and 'exception raised'.

This is in preparation for handling those cases differently.
Handle exceptions from FindEnumStringIndex correctly.

The previous code would return success from the JSNative with a pending
exception, potentially leading to assertion failures inside the JS engine
later.
Implement support for default values for enumeration arguments.
Add a few tests for dictionary codegen.
Support nullable strings in dictionaries.

We copy the string in all cases, so there's no need to handle the isMember
case differently.
Remove resource_task argument from css_link_listener.(fixes #2153)
auto merge of #2157 : lpy/servo/issue2153, r=Ms2ger

see #2153
auto merge of #2154 : Ms2ger/servo/enumerated-codegen, r=jdm
auto merge of #2155 : Ms2ger/servo/dictionary-codegen, r=jdm
Add web-platform-tests submodule and test runner
Remove some dead code from codegen as found by pyflakes.
Remove unused references to jsids in the generated code for dictionaries.
auto merge of #2089 : Manishearth/servo/wpt, r=Ms2ger

See #1479

This sets up a basic environment for running wpt. It instantiates a virtualenv, generates the manifest if it doesn't exist*, and runs the tests.

Currently @Ms2ger's [`run-in-servo` fork of wpt](https://github.com/Ms2ger/web-platform-tests/tree/run-in-servo/)  is used.

Note: I did everything in a shell script instead of make since one cannot run `source` from a makefile (the environment is immutable, apparently)


*It does not, however, update the manifest. We'll have to add an extra script for that.
auto merge of #2156 : Ms2ger/servo/codegen-deadcode, r=jdm
Support running make check-wpt with the objdir in less common places.
Use 'exceptionCode' when converting to DOMString.

This change allows us to use the code even in cases where we return a
Result type rather than a JSBool. Interface, primitive and union types
already get this right.
Merge the 'new' and 'Init' functions for dictionaries.

This moves the code in callers more in line with conversions for other types
and ensures the default values given to the dictionary fields (as defined by
the defaultValue function in CGDictionary.impl) do not escape the 'new'
method. The new code is also more in line with the code used by the
FromJSValConvertible trait.

This is the first step of my planned rewrite of the dictionary initialization
that will remove the default values entirely and reduce the code
duplication in the 'Init' (now 'new') function.