Build up the result of fmt! in a buffer instead of a vector
Removing some unused imports
Pass the fmt! buffer to each conversion method

Achieves a little more speedup and avoids allocations around some strings in
conv_str
auto merge of #5463 : alexcrichton/rust/faster-fmt, r=graydon

This is a minor step towards #3571, although I'm sure there's still more work to be done. Previously, `fmt!` collected a bunch of strings in a vector and then called `str::concat`. This changes the behavior by maintaining only one buffer and appending directly into that buffer. This avoids doubly-allocating memory, and it has the added bonus of reducing some allocations in `core::unstable::extfmt`

One of the unfortunate side effects of this is that the `rt` module in `extfmt.rs` had to be duplicated to avoid `stage0` errors. Dealing with the change in conversion functions may require a bit of a dance when a snapshot happens, but I think it's doable.

If the second speedup commit isn't deemed necessary, I got about a 15% speedup with just the first patch which doesn't require any modification of `extfmt.rs`, so no snapshot weirdness.

Here's some other things I ran into when looking at `fmt!`:
* I don't think that #2249 is relevant any more except for maybe removing one of `%i` or `%d`
* I'm not sure what was in mind for using traits with #3571, but I thought that formatters like `%u` could invoke the `to_uint()` method on the `NumCast` trait, but I ran into some problems like those in #5462

I'm having trouble thinking of other wins for `fmt!`, but if there's some suggestions I'd be more than willing to look into if they'd work out or not.
auto merge of #5483 : pcwalton/rust/static-syntax, r=graydon

r? @nikomatsakis
Edit release notes a bit
configure: accept clang 3.3 when passed --enable-clang
auto merge of #5488 : pcwalton/rust/depure, r=pcwalton
auto merge of #5496 : catamorphism/rust/release-notes, r=catamorphism
auto merge of #5497 : luqmana/rust/clang-ver, r=thestinger
libsyntax: Stop parsing `pure` and `static`
libsyntax: Introduce the new `assert!` macro; make `assert` no longer a keyword
librustc: Remove the `const` declaration form everywhere
libsyntax: Stop parsing `const`.
librustc: Add explicit lifetime binders and new lifetime notation in core/std/syntax/rustc
test: Add lifetime binders and new-style lifetime parameters to the test suite
libsyntax: Stop parsing old lifetime syntax
libcore: Fix obsolete syntax in extfmt