rt: don't save and restore xmm/regs in __morestack.
rustpkg: Fail when crate inference fails; inject link attributes

1. Fail when there's no package script and no crates named
main.rs, lib.rs, bench.rs, or test.rs.

2. Inject the crate link_meta "name" and "vers" attributes, so
that the output file gets named correctly in the library case.

3. Normalize '-' to '_' in package names.
rustpkg: Add a few tests

There's no test runner for rustpkg yet; just sketching out a few
basic test scenarios. pass/ contains packages that should compile
successfully, whereas fail/ contains packages that should fail
to build.
rustpkg: Implement clean; replace boolean result flags with fail!()

1. Implemented the `clean` command

2. The methods implementing rustpkg commands all returned `bool`.
Since most of not all of the error situations seem unrecoverable,
I changed the methods to return unit (and also stubbed out several
more methods that were assuming a package script existed, to be
re-implemented in the future)
rustpkg: Remove bogus .rc file
rustpkg: Change this example to show how to do a custom build
rustpkg: Don't execute the standard build logic if there is a pkg.rs
rustpkg: Add a list of rustpkg commands that should pass

This is a test file containing examples of commands that should
succeed. When we write the test runner, we will have to figure
out how to automate them.
rustpkg: Add more tests

These are examples of what *should* work, and probably don't
work yet.
Errors with the same span print the span once
add dropwhile and takewhile iterators
test: Add more comments about why extern-pass-TwoU64s is xfailed
test: xfail-macos some tests that don't work on mac i686
auto merge of #5939 : brson/rust/xfail, r=brson

Disabling them because they are failing on incoming. Looking into a fix now.
auto merge of #5798 : recrack/rust/multiple-errors, r=brson

Fix #4569.
auto merge of #5418 : luqmana/rust/stack-float, r=brson

Like I commented in #2043, I can't reproduce the weirdness from #1388 on either mac or linux (x84_64) and pushing to try gives all green.

That's 128 less bytes to have to keep in the stack for every call to __morestack.
core: Remove pipes::spawn_service, spawn_service_recv

These are only used in test cases; pipes isn't the right place for them;
they are unnecessary.

Conflicts:
	src/libcore/rt/uv/mod.rs
core: Just reordering some code
core: Remove #[doc(hidden)] attributes and atomic wrapper functions from pipes

Neither are needed
core: Inline the protocol definitions of sendp and oneshot

I want to be able to see what is going on