Various typos corrected
Add current year in the copyright header
Better highlight for repeat count error

Before:
````
test.rs:3:21: 3:30 error: expected constant integer for repeat count but found variable
test.rs:3             let a = ~[0, ..n]; //~ ERROR expected constant integer for repeat count but found variable
                              ^~~~~~~~~
````

After:
````
test.rs:3:27: 3:28 error: expected constant integer for repeat count but found variable
test.rs:3             let a = ~[0, ..n]; //~ ERROR expected constant integer for repeat count but found variable
                                     ^
````
make LinearMap fields private

Closes #4764
libsyntax: add some more explicit copies for vecs_implicitly_copyable)
auto merge of #5198 : youknowone/rust/repeat-count, r=brson

Before:
````
test.rs:3:21: 3:30 error: expected constant integer for repeat count but found variable
test.rs:3             let a = ~[0, ..n]; //~ ERROR expected constant integer for repeat count but found variable
                              ^~~~~~~~~
````

After:
````
test.rs:3:27: 3:28 error: expected constant integer for repeat count but found variable
test.rs:3             let a = ~[0, ..n]; //~ ERROR expected constant integer for repeat count but found variable
                                     ^
````
auto merge of #5199 : thestinger/rust/hashmap, r=brson

Closes #4764
librustc: Forbid chained imports and fix the logic for one-level renaming imports
librustc: Remove `fn@`, `fn~`, and `fn&` from librustc. rs=defun
libsyntax: Remove `fn@`, `fn~`, and `fn&` from libsyntax. rs=defun
libstd: Remove `fn@`, `fn~`, and `fn&` from libstd. rs=defun
libcore: Remove `fn@`, `fn~`, and `fn&` from libcore. rs=defun
auto merge of #5114 : osaut/rust/incoming, r=brson

Several typos corrected in the comments of  src/libcore/iter.rs and 2013 added to the copyright header (as requested on CONTRIBUTING.md)
test: Remove `fn@`, `fn~`, and `fn&` from the test suite. rs=defun
librustdoc: Remove `fn@`, `fn~`, and `fn&` from compiletest, fuzzer, rustdoc, and rt. rs=defun
librustc: Stop parsing `fn@`, `fn~`, and `fn&`
auto merge of #5197 : pcwalton/rust/fn-types, r=pcwalton

r? @catamorphism
auto merge of #5203 : erickt/rust/incoming, r=brson

My merges for #5143 missed a couple other copies. This patch corrects this, and gets stage0 to compile libsyntax with `#[deny(vecs_implicitly_copyable)]`. stage1 still fails though.
Change the default level of unused_imports to warn
Remove unused imports throughout src/