Track MANIFEST.json
auto merge of #2187 : Manishearth/servo/manifest, r=Ms2ger

Since we are keeping the results of previous tests locally (in metadata/), we should probably also track the generated MANIFEST file.
It won't get updated locally when the ini files are updated, which can lead to an outdated manifest.
Implement CharacterData.{deleteData, insertData, replaceData}
set the right flags and attrs for InitEvent
Remove JSPageInfo::js_compartment.

A js::rust::Compartment is little more than a glorified pointer to the
reflector of a window, so there's no good reason to use it. Instead, this
commit passes a JS<Window> directly when it's necessary.

This also means that we now have to use JS_DefineFunctions rather than
Compartment::define_functions; I believe the former is clearer to the reader
than the extra indirection involved in the latter calling through three
reopsitories.

This commit also simplifies ScriptTask::load to reuse the 'cx' local that is
in scope already, rather than refetching it through js_info.
Implement DOMImplementation::createDocument

Spec:
http://dom.spec.whatwg.org/#dom-domimplementation-createdocument

Closes #1509.
Added content tests for DOMImplementation.createDocument
auto merge of #2198 : Ms2ger/servo/js_compartment, r=jdm

A js::rust::Compartment is little more than a glorified pointer to the
reflector of a window, so there's no good reason to use it. Instead, this
commit passes a JS<Window> directly when it's necessary.

This also means that we now have to use JS_DefineFunctions rather than
Compartment::define_functions; I believe the former is clearer to the reader
than the extra indirection involved in the latter calling through three
reopsitories.

This commit also simplifies ScriptTask::load to reuse the 'cx' local that is
in scope already, rather than refetching it through js_info.
Implement Element.prefix (Fixes #1737)
auto merge of #2199 : sankha93/servo/prefix-impl, r=Ms2ger

See #1737.

r? @ms2ger
auto merge of #2072 : brunoabinader/servo/domimpl-createdocument, r=Ms2ger

Spec:
http://dom.spec.whatwg.org/#dom-domimplementation-createdocument

Closes #1509.
Ensure JS-owned memory is not leaked if a script task fails. Fixes #2201.
auto merge of #2196 : hazz/servo/initevent, r=Ms2ger

Should fix #2189

This is my first PR for servo (and first time using Rust), so apologies if anything is horribly wrong.
auto merge of #2195 : lpy/servo/issue2190, r=Ms2ger

see #2190
auto merge of #2202 : jdm/servo/scriptleak, r=Ms2ger

....
Make sure RefCell borrows are temporary.

This fixes two `RefCell<T> is already borrowed` failures when reloading an
existing pipeline, both caused by functions trying to modify `Pipeline::url`
or `ScriptTask::url` while a reference to a previous borrow is still in scope.
Add testcase #2025 for document.getElementById().
Make Attr::SetValue uses the internal setter.
Make Attr::SetValue to reflect attribute change.
Make Attr handles all setting value.