Cryptic error messages
It is quite difficult to understand what is going on when something goes wrong.
I have the following wrapper:
```nim
import os, strformat

import nimterop/[cimport, git]

when defined(windows):
  # Windows specific symbols, options and files

  # Dynamic library to link against
  const dynlibFile = "libode.dll"

elif defined(linux):
  const dynlibFile = "libode.so"

else:
  static: doAssert false

const
  base = currentSourcePath.parentDir() / "build"

echo base

static:
  cDebug()

  gitPull("https://bitbucket.org/odedevs/ode/src/0.16.1/", base, """
include/*
""")

#[
cPlugin:
  import
    strutils

  proc onSymbol*(sym: var Symbol) {.exportc, dynlib.} =
    if sym.kind == nskProc and sym.name.startsWith("__"):
      sym.name = sym.name.replace("__", "priv_")

    #if sym.kind == nskType and sym.name.contains("__"):
    #  sym.name = sym.name.replace("__", "_m_")
]#


cIncludeDir base/"include/ode"
cIncludeDir base/"include"
cImport(base/"include/ode/ode.h",  dynlib="dynlibFile",  flags="-G__=_", recurse=true) #flags="-f:ast2",
```
and I am getting [this error](https://pastebin.com/VzE0rmjR). Where everything is mixed (the stdout and the stderr). 

I would expect a message like: ERROR, header file, header line, reason. It would be brilliant if a workaround is suggested.
