librustc: Allow intra-crate start functions, for runtimeless operation.
Add a short section on ARC
mark unique pointer parameters as noalias

Closes #6749
Use passing by-value in gmtime, mktime

Per the recommendation of the now-removed FIXME.
Increment copyright year of time.rs
syntax highlight code examples in docstrings
extra: Add reserve and reserve_at_least to extra::deque

As called for in #4994
Add xfail'd test for #6762.
Change `alt` to `match` in filenames.
auto merge of #6741 : pcwalton/rust/intra-crate-start, r=graydon

r? @brson
rustc: Switch ty::node_type_table to smallintmap, cut 400mb memory use off a librustc build.

Smallintmap was being populated with sparse keys during ast deserialization.
Prevent refcount cycles during linting

Shaves off ~600MB of memory while compiling rustc
auto merge of #6752 : osaut/rust/tutorial-tasks, r=graydon

* Add a short section and an example illustrating the use of ARC. 
* Header for the section of Future changed to be more descriptive: "Backgrounding computations: Futures".
auto merge of #6776 : graydon/rust/node-type-table-hashmap, r=thestinger

Smallintmap was being populated with sparse keys during ast deserialization.
auto merge of #6777 : alexcrichton/rust/less-memory, r=graydon

Via my super-accurate timing (`/usr/bin/time -l`), I get 2431119360 => 1884430336 == ~520MB

Closes #6637.
auto merge of #6766 : fdr/rust/time-by-value, r=catamorphism

Per the recommendation of the now-removed FIXME.
auto merge of #6769 : catamorphism/rust/issue-4994, r=thestinger

r? @thestinger As called for in #4994
auto merge of #6770 : lkuper/rust/6762, r=catamorphism
auto merge of #6754 : thestinger/rust/noalias, r=nikomatsakis

The compiler guarantees that there are no other references to a unique pointer when it's passed by-value to a function.

The existence of the header and annihilator don't matter since it's not relevant to the call:

> For a call to the parent function, dependencies between memory references from before or after the call and from those during the call are “irrelevant” to the noalias keyword for the arguments and return value used in that call.

@graydon's tracing garbage collector stores the metadata outside of the boxes, so that won't be a problem. I'm unsure if updating the header while inside a function where it's marked as `noalias` would be a problem anyway since you never actually read or write to the header.

@nikomatsakis: r?
auto merge of #6771 : thestinger/rust/highlight, r=luqmana

This works with pandoc linked against highlighting-kate >= 0.5.3.8. It seems to just be a no-op with earlier versions, because I successfully ran this through `try`.

This also fixes some consistency issues (like making `Example`/`Examples` always a header and always using three tildes).