rustc: better error prints

Hi, this is inspired by the output of previous rustc output:
```
note: the compiler hit an unexpected failure path. this is a bug.
note: we would appreciate a bug report: http://doc.rust-lang.org/complement-bugreport.html
note: run with `RUST_BACKTRACE=1` for a backtrace
task 'rustc' failed at 'assertion failed: fields.len() > 0', /Users/rustbuild/src/rust-buildbot/slave/nightly-mac/build/src/librustc/middle/ty.rs:3657
```

This **unexpected failure** will scare off someone IMO, right, then such that a better error print would be better :p
By the way... I think it would be more informative for the reader if you followed the style of the error a couple of lines below (`enum_variants: all fields in struct must have a name`). What about `enum_variants: struct variant must have at least one field`?