Reduce coupling between layout and the DOM by separating out the layout interface.

Eventually, the layout interface will be moved along with the DOM into a
separate crate.
Remove the layout debug methods.

Premature abstraction; nothing used the traits polymorphically. Furthermore,
they increased coupling between layout and the DOM.
Separate the DOM and layout into separate crates.
etc: Make tidy more resilient to dirty build directories
Refactor display lists to use less memory.
auto merge of #466 : pcwalton/servo/phantom-type, r=pcwalton

See the explanation on the commit for more detail.

r? @metajack
auto merge of #474 : pcwalton/servo/separation, r=pcwalton

r? @metajack
auto merge of #476 : pcwalton/servo/display-list-refactor, r=pcwalton

r? @metajack
Update README.md

Fix README typos.
Merge branch 'master' of https://github.com/mozilla/servo into line-height

Conflicts:
	src/components/main/layout/inline.rs