librustc: Enforce privacy for static methods.

This starts moving a bunch of privacy checks into the privacy
checking phase and out of resolve.
libsyntax: Accept `static` instead of `const` for globals
libsyntax: Accept the new `[T, ..N]` style for vec.
auto merge of #5440 : pcwalton/rust/new-fixed-length-vec, r=graydon

r? @graydon