testsuite: Add two test cases (one xfailed)
test: Add two tests for issue #6272.
core: Make intrinsics::init unsafe

as per #3920
core: Make intrinsics::forget unsafe, too
testsuite: Test that init and forget are both unsafe
librustc: Fix ICE in core-text resulting from dynamic borrowing. rs=blocking-servo
Implement a new protocol for `for` loops that's much more easily composable
core: Use the new `for` protocol
std: Use the new `for` protocol
syntax: Use the new `for` protocol
rustc: Use the new `for` protocol
rustpkg: Use the new `for` protocol
Fix deriving(IterBytes) to use the new for-loop protocol
auto merge of #6366 : catamorphism/rust/issue-3920, r=catamorphism

r? @nikomatsakis as per #3920
auto merge of #6380 : pcwalton/rust/core-text-ice, r=pcwalton
Move flate from core to std
test: Use the new `for` protocol
Fix merge "failures"
auto merge of #6223 : alexcrichton/rust/issue-6183, r=pcwalton

Closes #6183.

The first commit changes the compiler's method of treating a `for` loop, and all the remaining commits are just dealing with the fallout.

The biggest fallout was the `IterBytes` trait, although it's really a whole lot nicer now because all of the `iter_bytes_XX` methods are just and-ed together. Sadly there was a huge amount of stuff that's `cfg(stage0)` gated, but whoever lands the next snapshot is going to have a lot of fun deleting all this code!
auto merge of #6205 : brson/rust/flate, r=brson

r? @graydon

I don't think this is necessary in core.