Use to_ascii_lower() and eq_ignore_ascii_case() instead of unsafe code.
auto merge of #2145 : SimonSapin/servo/to_ascii_lower, r=metajack

This reverts [some changes made during the 2014-03-04 Rust upgrade](https://github.com/mozilla/servo/commit/bbac8aa5c3d95e70151b824ca3443f0fb4d9b5a5#diff-d084c1d37003c83f26aa4dac0e8d9e6bL221). @larsberg, what was the reason for preferring the unsafe `.to_ascii_nocheck()`?

r? @larsberg
Remove NSS and NSPR from the build.

These were not being used and are responsible for a large amount of work
and problems.
auto merge of #2146 : metajack/servo/bye-bye-nss, r=jdm

These were not being used and are responsible for a large amount of work
and problems.
Implement Window.set/clearInterval.(fixes #2116)
auto merge of #2129 : lpy/servo/issue2116, r=jdm

see #2116
I add an `is_interval` field, so that when the `TimerData` is passed by `SetInterval`, we will not delete it from `active_timers`.
Also I think maybe we can extract the code in `ClearTimeout` and `ClearInterval` into another method to avoid duplicate.
Default to CPU renering on Android to avoid GPU-rendering-specific driver woes
auto merge of #2148 : larsbergstrom/servo/android_201404c, r=metajack

On Android, our feeble GPU graphics stack is even less reliable than it is on Linux. To make it easier to bring Android devices online, this patch defaults to CPU rendering, which is much more stable and, frankly, faster.

r? @metajack
Add transparent Traceable and Untraceable types to aid proper rooting practices, and replace ad-hoc Untraceable structs with empty Encodable implementations.
auto merge of #2147 : jdm/servo/untraceable, r=Ms2ger

...actices, and replace ad-hoc Untraceable structs with empty Encodable implementations.
Associate ResourceTask with UrlProvenance
auto merge of #2152 : jsanders/servo/fix-inline-css-resource-task-failure, r=jdm

Fixes #2121

I thought this would be better than passing an `Option<ResourceTask>` to `parse_css` because it avoids having to handle the potential failure at runtime when unwrapping.

No test included, but the error was reproducible by running content/test_getBoundingClientRect.html, and this fixes it. Glad to find a way to add an explicit test if need be.
Introduce some (commented-out) tests for enumeration codegen.
Rewrite FindEnumStringIndex to distinguish 'value not found' and 'exception raised'.

This is in preparation for handling those cases differently.
Handle exceptions from FindEnumStringIndex correctly.

The previous code would return success from the JSNative with a pending
exception, potentially leading to assertion failures inside the JS engine
later.
Implement support for default values for enumeration arguments.
Add a few tests for dictionary codegen.
Support nullable strings in dictionaries.

We copy the string in all cases, so there's no need to handle the isMember
case differently.
Remove resource_task argument from css_link_listener.(fixes #2153)
auto merge of #2157 : lpy/servo/issue2153, r=Ms2ger

see #2153