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).
How so? I'm using the fn from src/librustdoc/markdown. Don't I need this to differentiate it?

Also, to dive a bit deeper, I wanted to avoid copy-pasting this function when it was available in another module but, in doing so, I've made it publicly available through the rustdoc crate. Is that OK? Should I, instead of using use statements, simply be copying the source of this function (and the macro/function it depends on) to the render.rs file?

I tend to think this should be refactored to avoid exposing it unnecessarilly.