Fix preprocessor output

Error message is mixed into the output of the preprocessor.
Message of "#warning" should be output to stderr.

```shell
[1] pry(main)> require 'cast'
=> true
[2] pry(main)> cpp = C::Preprocessor.new
=> #<C::Preprocessor:0x007fd42a5c16f0 @include_path=[], @macros={}>
[3] pry(main)> C::Preprocessor.command = 'clang -P -E'
=> "clang -P -E"
[4] pry(main)> cpp.preprocess("#warning user warning")
=> "/Users/user/src/cast/cast-preprocessor-input.20140507-11854-hpifho.c:1:2: warning: user warning [-W#warnings]\n#warning user warning\n ^\n\n1 warning generated.\n"
```
`cpp.preprocess("#warning user warning")` should be empty string.