Attaching document comments to AST nodes

Now document comments are attached to AST nodes and modules
Probably better to do something like this:

```haskell
body annotatedDecls =
    let decls = map decl annotatedDecls in
    ...
```