Flat abstract Text.Documentalist module

`Text/Documentalist.hs` should export all 3 abstract modules. So I had to clean up the namespace a little.

I had to rename CommentParser to "generate" instead of "parse" comments. It could be called something else more accurate. Also the `Parameter` type conflicted, so CommentParser now has a `Param` type.

But the point is the Main.hs / anyone using the library can do:

```hs
import Text.Documentalist
import Text.Documentalist.SourceParser.Clang
import System.Environment

main :: IO ()
main = do
    args <- getArgs
    let x = newSourceFile $ head args
    cs <- parse x
    print cs
```