Add basic support for web fonts. Synchronous loading only
for now, and only deals with TTF format fonts.

For an example, try loading http://icons.marekventur.de
Fix missing license header in new file.
Address review comments.
Don't rely on font hint for format detection. Handle parsing comma
separated format hints. Fix oversight in mac code dealing with
creating web fonts from memory.
Update font face to new url parser.
Fix parsing invalid url, clean up font template matching.
Fixes #2969 by only stripping HTML whitespace
Use TaskBuilder to spawn worker threads.
Use TaskBuilder for the main Servo task.
Pass an argument to spawn_named_with_send_on_failure to support spawning native tasks.
Use spawn_named_with_send_on_failure for the RenderTask (fixes #2744).
remove unnecessary clone usage
Un-blacklist the layout crate from rustdoc. See #2924.

Whatever rustdoc bug we used to hit was solved by the Rust upgrade.
(The style crate still causes rustdoc to overflow its stack.)

Also use Markdown tables rather than ASCII diagrams in inlines.rs.
Not only does this look nicer, this works around rustdoc trying
(and failing) to parse them as Rust code.
Move documentation table stylining to a shared location.
Blacklisted docs don’t need any dependency, since we don’t actually generate them.
Merge pull request #3001 from jxs/master

remove unnecessary clone usage
Merge pull request #2998 from Ms2ger/taskbuilder

Use TaskBuilder where possible; r=metajack
Merge pull request #3002 from servo/rustdoc-layout

Un-blacklist the layout crate from rustdoc.
Fix rustdoc comment syntax in gfx::display_list.
Merge pull request #3004 from mbrubeck/doc-comment

Fix rustdoc comment syntax in gfx::display_list. r=zwarich