Don't fail!() when rustdoc fails to run

The return value of `err.output()` will be `None` if the rustdoc executable
failed to spawn, in which case we can give a more graceful error message.

Closes #481
auto merge of #491 : alexcrichton/cargo/issue-481, r=brson

The return value of `err.output()` will be `None` if the rustdoc executable
failed to spawn, in which case we can give a more graceful error message.

Closes #481