Typeck: Disallow scalar casts to bare_fn.

Bare functions are another example of a scalar but non-numeric
type (like char) that should be handled separately in casts.
This disallows expressions like `0 as extern "Rust" fn() -> int;`.

It might be advantageous to allow casts between bare functions
and raw pointers in unsafe code in the future, to pass function
pointers between Rust and C.

Closes #8728
Added octal literal support.
Grammar error and vim syntax highlighting mistake fixed.
Create epub versions of tutorial and ref manual.

Pandoc can create epub verions of the markdown files. Since the docs
are lengthy, epubs are handy to have around. Two rules to create epub
versions of the reference manual and the main tutorial are added here.

Signed-off-by: Noufal Ibrahim <noufal@nibrahim.net.in>
Added skeleton implementation of a B-tree with a few bells and
whistles.  No major functionality added yet (such as insertion and
removal).
rt: Convert timezone to utf-8 on Windows

Previously #9418 fixed utf-8 assertion issue by wcsftime,
but the function didn't work as expected: it follows the locale
set by setlocale(), not the system code page.
This patch fixes it by manual multibyte-to-unicode conversion.
Refactor TypeContents to be more scrutable. In particular, create coarser bits
than the current ones, which were very fine-grained.  Also, cleanly distinguish
when properties must be found in *owned* types vs *reachable* types.

Fixes #10157
Fixes #10278
Rename misleading contains_managed to owns_managed
Make TypeContents consider the type `T` to be reachable via `*T` pointers

Fixes #9509
Re-arranging some things in btree.rs to accommodate testing.
auto merge of #10289 : nikomatsakis/rust/issue-10157-TypeContents-refactor, r=pcwalton

See #10157. This compiles now.

Fixes #10278.
Fixes for compilation to iOS:

- remove /usr/include from the include path since the iOS SDK provides the correct version
- `_NSGetEnviron()` is private and not available on iOS
- `.align` without an argument is not allowed with the Apple tools. 2^2 should be the default alignment
- ignore error messages for XCode < 5
- pass include path to libuv
auto merge of #10227 : kud1ing/rust/ios, r=alexcrichton
Added positive tests for integer literal base interpretation.
Register new snapshots
auto merge of #10328 : alexcrichton/rust/snapshots, r=thestinger
add `from_send` to Rc, since #9509 is fixed
auto merge of #10322 : thestinger/rust/no_freeze, r=alexcrichton
update for ndk r9b
fix rpass core-run-destroy for android