Make Attr::value private.
Simplify Element::set_attribute for its remaining callers.
Implement support for parsed attributes.

This commit is heavily based on earlier work by Bruno Abinader in #2073.
Implement Element.classList (partially fixes #1717).
Implement parsed 'unsigned long' attributes.

This commit is partially based on earlier work by Bruno Abinader in #2073.
auto merge of #2616 : Ms2ger/servo/attrvalue, r=jdm

Obsoletes #2073.
Make the conservertive stack scanner calculates `Temporary<T>` as root instead of calling root methods.

See: https://github.com/mozilla/servo/issues/2650
auto merge of #2652 : saneyuki/servo/root, r=jdm

fix #2650
Replace uses of JS<T>.unrooted() with JS::from_rooted #2580
Use Cell for Reflector::object.
Remove Reflectable::mut_reflector.
Split Page code out of script_task.rs #2530
auto merge of #2654 : Ms2ger/servo/reflector-cell, r=jdm
Use '//!' rather than '///' for the overview comment in js.rs.
Add some blank lines to ensure rustdoc picks up the lists.
Correct formatting in documentation in js.rs.
auto merge of #2585 : ebalint/servo/2530, r=jdm
auto merge of #2649 : ebalint/servo/2580_JS_T_unrooted_replace, r=jdm

removed .clone() calls
modified from_rooted method parameter: T to &T
auto merge of #2653 : Ms2ger/servo/docs, r=Ms2ger,metajack
Make some locals immutable.