Fix pointers, use libcore.

This removes what is now implemented in libcore.

It also fixes the `*const` change.
Add Cargo build system.
Add libcore Cargo toml
Create README.md
Add Makefile, and complete OS X platform.

This adds the minimum number of syscalls needed to compile, and the
appropriate C type sizes. Because we’re not linking against libSystem
(and using the LC_UNIXTHREAD command) we use the clang flag `-e _start`
to set the entry point at rust’s unavoidably name-mangled start
function.

This also adds a Makefile capable of building on multiple platforms,
with the caveat that the `-L $(TARGETDIR)/deps` flag must be added to
RUSTCFLAGS for non-native platforms.
Call rustc directly without Cargo

This avoids having to work around Cargo’s inability to produce static
libraries, etc.
Adjust call to linker
Correct OS X syscall classes

This handles the different classes of syscalls in XNU. It also adds a
call to puts() to test.c to demonstrate a correctly bound sys_write().
Add script to add #[no_split_stack] to libcore

Also modifies README to address this.
Remove Cargo and morestack.

morestack is only necessary if rustc produces a linked output.
Fix no_split_stack for private impls and provided methods.
Fix renamed libcore traits
Fix renamed lint
Update C string macro
Remove old rust_core code
Add NULL constant, as consts::NULL

Alternative names are consts::stddef::NULL, or libc::stddef::NULL. The
type of NULL is int_t, but the standard would allow for long_t or (void
*)0 as well.
Improve OS X start(), add crt0() and getenv()
Fix for pattern match syntax change

Three periods are now used for inclusive ranges.
Implement fail_fmt, now a required language item
Fix for change in cfg semantics