* cubist uses a string buffer to capture the output files that would normally get saved to external files. The package was failing R CMD check only on windows because the output files were getting garbled. `s*printf` functions work differently on Windows. On Linux, they return the size that is needed to correctly print the string. On Windows, if there isn't enough space, they return -1.
* Also, work-arounds were added to the C sources because of R CMD check issues. `printf()`, `assert()` and `exist()` statements were removed or redefined.