Adds support for table layout trace and updates viewer for tables.
Fix typo in equality check
First steps of &JSRef -> JSRef conversion

Replace &JSRef with JSRef in the bulk of the generated code. This will
remove a level of indirection throughout all DOM code.

This patch doesn't change methods implemented on JSRef<T> to take `self`
rather than `&self`, and it leaves a few other uses of &JSRef, but those
changes can be made incrementally.
layout: Make percentage heights propagate through inline flows.

I found this random bug during an attempt to improve Wikipedia.
layout: Handle floated blocks with percentage heights correctly.

Improves the top menu in Wikipedia.
Merge pull request #3422 from zwarich/jsref

First steps of &JSRef -> JSRef conversion
Merge pull request #3420 from glennw/table-debug

Adds support for table layout trace and updates viewer for tables.
Merge pull request #3430 from pcwalton/inline-block-percentage-height

layout: Make percentage heights propagate through inline flows.
Reintroduce Untraceable<T>.deref_mut() to make mem::replace() possible to Untracebale<T> field.

Some compile errors caused by the compiler's misreading comes back again :(
We re-use `deref()`explicitly to hide these errors.
Use Untraceable<T> to hold LayoutDataRef instead of manual Encodable implementation.
Merge pull request #3418 from saneyuki/untrace

Replace manual Encodable implementation for LayoutDataRef with Untraceable
Share code between Navigator and WorkerNavigator

Also shares code between Location and WorkerLocation. This has been done
by introducing NavigatorInfo and UrlHelper.

Fixes #3159
Merge pull request #3400 from gilles-leblanc/issue-3279

Share code between Navigator and WorkerNavigator
Implement HTMLOptionElement.text#3023

Signed-off-by: Jeongeun Kim <je00julie.kim@gmail.com>

Implement HTMLOptionElement.text#3023 (2nd trial)

Implement HTMLOptionElement.text#3023 (3rd trial)

delete metadata for skipping option tests

fix conflict
Move is_void() Element method together with the other struct methods,
it becomes part of ElementHelpers.
Merge pull request #3428 from Adenilson/moveIsVoidElement01

Move is_void() Element method together with the other struct methods.
More progress in the &JSRef -> JSRef conversion

Change all of the <Class>Methods traits to take `self` instead of
`&self`.
Convert various helper traits from &JSRef to JSRef

I converted them all with a few exceptions:

- Methods that were used by trait objects, since trait objects don't
  work with `self` methods.
- Methods that take an &'b JSRef<'a, T> and return an &'b. In reality,
  many (all?) could return an &'a instead, but this isn't allowed by the
  Deref trait.
- Methods that internally rely on the same issue with Deref.
- I left out the traits involved in layout entirely, even though not all
  of their methods suffer from one of the above problems.

There will probably be solutions to all of these problems in the future.
Remove some extraneous &* pairs
Merge pull request #3364 from jejuliekim/option-text

Implement HTMLOptionElement.text #3023