Consume once fns when calling them (#2549).
Permit moving out of captured upvars in once fns. Close #2549.
Add tests for once functions (#2549).
Hide the once-move-out privilege for stack fns behind '-Z once-fns'
Oops, hide 'unless once fn' error message hint behind -Z once-fns too.
Remove `ast::pure_fn` and all concept of `pure` from the compiler
replaced some 'std::' with 'extra::' in comments
Cleaned up middle a bit.

The only really tricky change is that a long chain of ifs, and elses
was turned into a single if, and a match in astencode.rs. Some methods
can only be called in certain cases, and so have to come after the if.
abi: remove dead code

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
compiletest: Shorten test names
Un-xfail working test
vim/syntax/rust.vim: fix date header

The last change was made in 2013 not 2012.
Merge remote-tracking branch 'cmr/issue/2773' into HEAD
Merge remote-tracking branch 'artagnon/abi-dead-code' into HEAD
Merge remote-tracking branch 'reusee/master' into HEAD
Merge remote-tracking branch 'brson/shorttestnames' into HEAD
Merge remote-tracking branch 'sstewartgallus/cleanup_middle' into incoming
Merge remote-tracking branch 'cmr/various-cleanup' into incoming
rust.vim: Links previously unused rustFuncCall

This allows for highlighting of function calls
for free floating, member, and static functions.
Get rid of terrible way for iterating over provided methods.