Added jsondoc compiler switch

Outputs top-level exported information in JSON
Replaces PDoc with var TRstGenerator for documentation.

The PDoc type is a convenience internal alias. Where procs are exported
only documented types should be used to avoid confusing users.
Adds missing ``code-block`` to macros' docstrings.
Adds some docstrings to rstgen.
Updates idetools docs after changes by #743.
Update macros.nim
Adds docstring to macros.newIdentDefs.
Merge pull request #768 from fowlmouth/patch-2

Update macros.nim
Merge pull request #764 from gradha/pr_doc_improvements

Documentation improvements
Merge pull request #742 from onionhammer/master

Added jsondoc compiler switch