Add `at-doc` and related code from Docile.

This is some initial work to add `@doc` from Docile. I'm not sure if I've done the `include` and `export`s correctly -- it does work fine when calling `using Base.Docstrings`.

Only the module itself is exported from `Base` since I didn't feel adding additional exports was necessary.

I've retained the metadata section for each documented object (as per Docile), but I'm aware about the debate regarding whether to include metadata or not.

Hopefully this PR can further the discussion regarding package documentation.

**TODO**

- [ ] tests
- [ ] documentation


Rather than escaping the whole thing and then explicitly qualifying, it might be better just to escape specific parts.