Eliminate servo_util::atom

We only needed this for Encodable, and now we use JSTraceable instead.
Enable acid2 reftest on Linux. Update rust-layers.
Use string-cache's Namespace type
auto merge of #3529 : glennw/servo/linux-acid2, r=metajack
auto merge of #3530 : kmcallister/servo/namespace-atom, r=Ms2ger
Add the defenition of InvalidNodeTypeError.
Implement some Range attributes.

  * Range.startContainer
  * Range.startOffset
  * Range.endContainer
  * Range.endOffset
  * Range.collapsed
Add NodeHelpers.length().
Add NodeHelpers.get_tree_root().
Add NodeHelpers::inclusive_ancestors().
Implement Range.setStart(), Range.setEnd().
Implement Range.setStartBefore(), Range.setStartAfter(), Range.setEndBefore(), and Range.setEndAfter().
Add the test for Range's initial state.