Clean up rustc warnings.

These are basically all straightforward changes and should not impact behavior of the language.
When I redo `make check`, I got an error here.  `u` should have been mutable since `extend()`, unlike `append()`, [requires `&mut self`](http://doc.rust-lang.org/collections/vec/struct.Vec.html#method.extend).  Why couldn't I catch this before??