Refactored make_absolute into functionality on the Path
Improved windows path handling support
Added is_restricted() to path
Fix private::exclusive_unwrap_conflict test. Fixes #4689.
core: Extract comm from pipes. #4742
De-implicit-self librustc
Put unique allocs in managed heap when they might contain managed boxes.
Fix vector syntax in error messages
Consolidate codes dealing with LLVM struct type
auto merge of #5083 : graydon/rust/gc, r=graydon

r? @pcwalton

Local testing shows it's correctly putting things like ~(@10) in the managed heap. Not entirely sure how to turn such tests (which just log annihilation stats) into a regression test; we don't have much in the way of feedback from the annihilator. Open to suggestions. I will want to be keeping more detailed runtime stats on the gc as I proceed.
auto merge of #5051 : bstrie/rust/deimpself, r=pcwalton

With the exception of three places where explicit self ran into borrowing errors. Will try those again once borrowing is refined.
auto merge of #5081 : brson/rust/pipes, r=pcwalton

r?
auto merge of #5078 : bblum/rust/incoming, r=brson

r? @brson
Remove legacy_modes from test cases
auto merge of #5092 : brson/rust/legacy, r=brson
libsyntax: De-mut the pipe compiler
libsyntax: De-mut the macro parser. rs=demuting
libsyntax: De-mut the parser. rs=demuting
libsyntax: Remove all mutable fields from libsyntax. rs=demuting
etc: Suppress the remaining Valgrind error in rustdoc. rs=burningtree