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.
Convert vec::[mut_]slice to methods, remove vec::const_slice.
Convert vec::{head, tail, init, last} (and similar fns) to methods.
Convert vec::{pop, shift, unshift, insert, remove, swap_remove} to methods.
Convert vec::{push, push_all, push_all_move} to methods.
Convert vec::truncate to a method.
Convert vec::retain to a method.
Convert vec::{partition, partitioned} to methods.
Convert vec::{reserve, reserve_at_least, capacity} to methods.
extra: silence some test warnings.
std: silence some test warnings.
Extended test cases for struct debug information.
Added test cases for different kinds of padding (simple-struct.rs)
Added test cases for nested structs (struct-in-struct.rs)
Fixed debug information bug regarding struct padding.
debuginfo: Added test cases for tuples.
debuginfo: Added test cases for tuples contained in structs.
debuginfo: Many little formatting improvements.