This adds the infrastructure necessary to support stacking contexts that
are not containing blocks for absolutely-positioned elements. Our
infrastructure did not support that before. This minor revamp actually
ended up simplifying the logic around display list building and
stacking-relative position computation for absolutely-positioned flows,
which was nice.
When inserting a node that was already dirtied, the dirtying logic
would short circuit: "This node is already dirty? Great! Then its
parents must be HAS_DIRTY_DESCENDANTS, too! Let's skip that step."
This isn't appropriate when nodes move around the tree. In that case,
the node may be marked HAS_CHANGED, but ancestors may not yet have
the HAS_DIRTY_DESCENDANTS flag set.
This patch adds a `content_and_heritage_changed` hook in the document,
to deal with these cases appropriately.
This patch is a first stab at implementing border-radius. It looks fine as long as
the border isn't an ellipse (that might not even parse yet), and the border-widths
around a border-radius are the same.
Here's a cool screenshot!

r? @pcwalton @SimonSapin
Moved all getters from Element to ElementHelpers. Existing ElementHelpers getters `get_namespace` and `get_local_name` were replaced by `namespace` and `local_name`. Callers were updated accordingly. Also the getters are no longer inlined.
3 of the getters needed to be added to RawLayoutElementHelpers as well, to accomodate existing calls directly from Element objects.
- Added TargetedLoadResponse and ResponseSenders
- LoadData constructor contains the next consumer which means
SnifferManager doesn't need the next consumer to start
- New SnifferTask is created at new resource_task creation
- Update Unit Tests
selector_matching.rs:1263:44: 1263:63 warning: use of deprecated item: Renamed to `get`, #[warn(deprecated)] on by default
selector_matching.rs:1263 assert_eq!(1, selector_map.id_hash.find(&atom!("top")).unwrap()[0].declarations.source_order);
^~~~~~~~~~~~~~~~~~~
selector_matching.rs:1265:47: 1265:79 warning: use of deprecated item: Renamed to `get`, #[warn(deprecated)] on by default
selector_matching.rs:1265 assert_eq!(0, selector_map.class_hash.find(&Atom::from_slice("intro")).unwrap()[0].declarations.source_order);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
selector_matching.rs:1266:41: 1266:71 warning: use of deprecated item: Renamed to `get`, #[warn(deprecated)] on by default
selector_matching.rs:1266 assert!(selector_map.class_hash.find(&Atom::from_slice("foo")).is_none());
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The 'find' function was changed to 'get'. Updated to remove this warning given when running the tests.