Various cleanups to repr and intrinsics

The commit messages explain it pretty well.  The main impetus was for removing `@io::Writer` and replacing it with `&mut io::Writer` in repr (only marginally worked). This should allow `ifmt!` using `%?` to perform fewer allocations!

Otherwise, I just started rampaging through intrinsics to remove as many as I could.