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

Yep, I know what it does. :) (Heh, it's cool that you can use librustdoc in the playpen.)

> 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?

I don't think it's particularly necessary.

It's certainly not useful for `in_header` since it makes no sense to put textual HTML in `<head></head>`. I don't think there's much benefit to putting markdown in the others, since the input will almost certainly have to be carefully crafted to fit in with the rest of the page. (Otherwise it will just be dumping a slab of text at the top/bottom of the page, outside any `div`s or styling.)