Fail when a vec::reserve is too large
auto merge of #7578 : alexcrichton/rust/overflow, r=thestinger

This should never cause a segfault, but rather fail somehow. Possibly a condition could be used here, but for now there's not much else to do.