remove bindings codegen h/cpp files from .gitignore

These files don't exist in the tree, and the codegen doesn't create
them, so we shouldn't have them sitting around in .gitignore.
Implement MutNullableJS::or_init.

This will make it easier to implement lazy getters.
Use MutNullableJS::or_init in Document.
Use MutNullableJS::or_init in Window.
convert net crate to use hyper
convert msg crate to use hyper
convert script crate to use hyper
adjust WPT since hyper fixed some
PEP8 line length fixes in testing_commands.py

...so that PyLint stops yelling at me
Adds a --component (or -c) argument to test-unit

Example usage:

`./mach test-unit -c style`
Last second bug catch
Mach test inference fix
devtools: handle script task panics gracefully in ConsoleActor.
auto merge of #4220 : eddyb/servo/devtools-panic, r=jdm

r? @jdm
added ErrorEvent WebIDL and errorevent.rs
Implement the HTMLScriptElement.src setter

Fixes #1113.
auto merge of #4227 : mbrubeck/servo/script-src, r=jdm

Fixes #1113.  r? @Ms2ger
Make tidy ingore new target dir
auto merge of #4238 : froydnj/servo/remove-cpp-files-from-gitignore, r=Manishearth

These files don't exist in the tree, and the codegen doesn't create them, so we shouldn't have them sitting around in .gitignore.

There are h/cpp files sitting around in the bindings codegen directory; I suppose one could make the argument that they're useful for examples, so we should keep them around, too?
auto merge of #4240 : Manishearth/servo/tidy, r=SimonSapin