cleanup the implementation

This is essentially a rewrite, but we get:

  * cleaner implementation, as the C binding stubs are separated from their use sites. This makes marshaling to and from Haskell types explicit.

  * better types, particularly with the compilation options which are now encoded as a data type, rather than taking an arbitrary list of strings.

  * ability to verify programs before compilation (the magic Bool is a bit awkward though)

  * improved Result type, which is the PTX + log messages. If there is an error, the error log is attached to the exception. This avoids unpacking an Either in user code, which amounts to checking an exception code.

  * Faster, as we avoid copying the input and output buffers when shuffling across the the Haskell/C boundary.
disable the llvm-general test due to the data layout parse bug
cabal fix
derp, export compile module
log size wibble

The size returned by nvvmGet*Size includes the NULL terminator. Make sure we don't include that when marshaling to a ByteString.
strictness
Update the LICENSE file with the correct license terms.
Fix build for OS X 10.9/xcode 5 (Mavericks)

* Make sure to #include stubs.h first everywhere
* CPP definitions to ensure that language-c can parse the Mavericks headers
Update the LICENSE file with the correct copyright years.
wibble
Add the copyright notice to Haskell source files.
Remove the auto-generated configure script.
remove the configure script

The configure scripts are GPL licensed. To be safe, we don't want to include software tools that use other licenses, that might conflict with our own. The cabal file now just adds the default CUDA installation paths for each platform. If that doesn't work, we still rely on the user to specify the appropriate paths with --extra-{include,lib}-dirs
Add the copyright notice to .ll files in the Test directory.
Add the copyright notice to the cabal file.
Add the copyright notice and the description.
Identify the source of the code that we borrowed.
wibble
Update the copyright and license fields.
Update the copyright notice.