Run a single WPT test from a relative path

Fixes #4055
embedding: fix type decls
embedding: add cef_display_handler_t decl
embedding: add cef_life_span_handler_t decl
embedding: add cef_client_t decl
embedding: add cef_window_info_t decl
util::opts::default_opts() is now pub
embedding: redo browser creation and message loop code to be more CEF-like

big thanks to @alexcrichton for his help with this
embedding: redo browser creation, split after_created COM to separate function

this causes the callback to run at the expected time for applications that may depend on the browser loop having started or somesuch
auto merge of #4049 : zmike/servo/embedding-callbacks, r=jdm

begin implementing CEF COM, add more types (stupid rust-bindgen taking forever to figure out...)

@jdm @larsbergstrom
auto merge of #4063 : mttr/servo/test_wpt_from_relpath, r=mbrubeck

Fixes #4055 

This PR allows `./mach test-wpt` to be run  (from /path/to/servo) with a single relative path to some wpt test.

For example:
```
./mach test-wpt tests/wpt/web-platform-tests/dom/sometest.html
```
The argument `tests/wpt/web-platform-tests/dom/sometest.html` is passed on as `--include dom/sometest.html`.
layout: Fix De Morgan's Law error in incremental reflow, allowing
float/absolute layout layout to be idempotent again.

Fixes the maze solver.
auto merge of #4066 : pcwalton/servo/float-incremental-layout-fix, r=cgaebel,cgaebel,cgaebel

Fixes the maze solver.

r? @larsbergstrom (or anyone)
Implement HTML{Anchor,Area,Link}Element.relList.

https://github.com/servo/servo/issues/3994