Moved .sleep() to Timer.
Added home_for_io_with_sched variant. Temporarily making IO unkillable.
Make json::to_xxx(&Json) fns Json::to_xxx(&self)

to_str, to_pretty_str, to_writer, and to_pretty_writer were at the top
level of extra::json, this moves them into an impl for Json to match
with what's been done for the rest of libextra and libstd.
Update FFI tutorial to reference `c_str::to_c_str`

The FFI tutorial still incorrectly stated that strings were terminated
with \0 and suggested using `str::as_c_str`.
make: rm LLVM_BUILD_ENV

using this to turn off the frame pointers isn't needed, and doesn't
actually work right now because the reference to it omits the target
triple
make: stop disabling frame pointer elimination

We currently have no need for the frame pointers on any platform. They
may eventually be needed on platforms without an equivalent to the DWARF
call frame information to walk the stack in the garbage collector.

Closes #7477
auto merge of #8691 : anasazi/rust/fix-timer-interface, r=brson

Resolves #8687.
auto merge of #8692 : kballard/rust/ffi-tutorial-c_str, r=huonw

The FFI tutorial still incorrectly stated that strings were terminated
with
auto merge of #8684 : michaelwoerister/rust/stepping_and_scope_fixes, r=jdm

This PR contains some code cleanup and the fix for issue #8670.
~~I am not sure about issue #8442 (could not reproduce it). @jdm, could check after this is merged and possibly close the issue then?~~ (closed now)

Some interesting facts: With this commit, it should be possible to compile libstd with `-Zdebug-info` (it does not work yet with `-Zextra-debug-info` but we are getting there). Switching debug info on increases the compile time for libstd by about 2 seconds.

@catamorphism I get one failing test in rustpkg:
`package_script_with_default_build` says: `task <unnamed> failed at 'Couldn't copy file', /home/mw/rust/src/librustpkg/tests.rs:689`
Would you have any idea what that is about? Seems be something wrong on my machine...

Cheers,
Michael

Fixes #8670
auto merge of #8695 : thestinger/rust/build, r=pcwalton

We currently have no need for the frame pointers on any platform. They
may eventually be needed on platforms without an equivalent to the DWARF
call frame information to walk the stack in the garbage collector.

Closes #7477
Make getopts count (and thus align/paginate) in terms of codepoints not bytes.
Use the proper monomorphized ty::t for llvm alias hints. Closes #7260.
Rename {Reader,Writer}ByteConversions methods

The method names in std::rt::io::extensions::WriterByteConversions are
the same as those in std::io::WriterUtils and a resolve error causes
rustc to fail after trying to find an impl of io::Writer instead of
trying to look for rt::io::Writer as well.

Same goes for ReaderByteConversions.
Fix two small warnings
rt: Remove last use of C++ exchange alloc
rt: Remove rust_exchange_alloc
rt: Remove indexed_list
Fix some vector function failure tests. Closes #8698
test: add support for sharding testsuite by passing --test-shard=a.b
Talk about trait bounds in the tutorial.