RFC: Documentation System

Ok, so this has ended up evolving into a full doc system. Functions and macros can be documented with
```julia
@doc """
Description here
""" ->
function foo() ...
```
(prettier syntax forthcoming)

Documenting multiple methods of a function will concatenate the doc strings together, in the order the methods were originally defined.

By default `@doc` treats unadorned strings as equivalent to `md""` (i.e. markdown syntax) but you can actually put anything before the arrow to associate it with the function.

Docs can be queried with e.g.
```julia
doc(Docs.doc)
@doc Docs.doc
@doc @doc # For macros
@doc text""
```
(and you can try these out on this branch)

---
*Original:* Here's a first pass at getting Markdown.jl into Base. This will us allow us to display Julia's doc strings in the terminal and rich environments; see the [readme](http://github.com/one-more-minute/Markdown.jl) for some examples.
Since `md_str` calls `mdexpr`, and `mdexpr` calls `parse`, this sounds like it will parse all Markdown documentation strings when a module is loaded.    As discussed in MichaelHatherly/Docile.jl#29, however, we almost certainly want something that initially stores just the raw text/markdown string and parses lazily.