Allow markdown in crate docs.

This makes the `in-header`, `markdown-before-content`, and `markdown-after-content` options available to `rustdoc` when generating documentation for any crate.

Before, these options were only available when creating documentation *from* markdown. Now, they are available when generating documentation from source.

This also updates the `rustdoc -h` output to reflect these changes. It does not update the `man rustdoc` page, nor does it update the documentation in [the `rustdoc` manual](http://doc.rust-lang.org/rustdoc.html).
In using Markdown, it does use *some* markdown. See http://is.gd/heuQdq

This is contradictory to what happens when using `--markdown-..` on a markdown file. In that case, you *must* pass in HTML.

What this means is that improperly formatted markdown will cause a run-time error that may be hard to track down. I like the flexibility of being able to pass basic markdown - do you think it's worth it at that cost, so long as it is documented? Or should I take out the `Markdown` struct?