Let llsize_of be a ConstantInt
Fix const array index limit calculation.

The number of operands of the LLVM node initializing the array
underlying a const vector isn't always the array length -- if the
array is of a sufficiently primitive type and all the elements' values
are known (or something like that), LLVM uses a specialized Constant
subclass that stores the data packed, and thus has no operands.  Oops.

But, because llsize_of now gives us a ConstantInt, we can just fix
mozilla/rust#3169 and this all goes away.
Typo s/recusive/recursive/
Add and lex LIFETIME tokens

cc #4846
auto merge of #4845 : osaut/rust/master, r=graydon

There was a simple typo on recursive in doc/tutorial-macros.md: s/recusive/recursive.
auto merge of #4844 : jld/rust/const-index-fix, r=graydon

Fixes #3169 and uses that to fix const array indexing, which I broke (in a way that doesn't break tests but will greatly confuse users) while trying to fix const enum vectors.
auto merge of #4847 : nikomatsakis/rust/region-syntax, r=graydon

cc #4846

r? @pcwalton