librustc: Don't emit call for intrinsics instead just trans at callsite.
librustc: Remove old codepaths for creating intrinsic functions.
librustc: Update to reflect changes to how intrinsics are codegened.
Derive Clone for Command and StdioContainer
librustc: Translate input for transmute directly into dest.
libcore: Reexport a couple of widely-used low-level intrinsics to reduce
code bloat.

This didn't make a difference in any compile times that I saw, but it
fits what we're doing with `transmute` and seems prudent.
auto merge of #15566 : japaric/rust/command-clone, r=alexcrichton

Allows use cases like this one:

``` rust
use std::io::Command;

fn main() {
    let mut cmd = Command::new("ls");
    cmd.arg("-l");

    for &dir in ["a", "b", "c"].iter() {
        println!("{}", cmd.clone().arg(dir));
    }
}
```

Output:
```
ls '-l' 'a'
ls '-l' 'b'
ls '-l' 'c'
```
Without the `clone()`, you'll end up with:
```
ls '-l' 'a'
ls '-l' 'a' 'b'
ls '-l' 'a' 'b' 'c'
```

cc #15294
auto merge of #15563 : luqmana/rust/nif, r=pcwalton
auto merge of #15569 : pcwalton/rust/reexport-intrinsics, r=cmr

code bloat.

This didn't make a difference in any compile times that I saw, but it
fits what we're doing with `transmute` and seems prudent.

r? @alexcrichton