Add support for Windows.

* Now libinteractive can generate Windows-friendly templates and a .bat
  file instead of the Makefile.
* All of the platform-dependent quirks in the C target have been ironed
  out. It now compiles without warnings in Windows as well as in Linux.
* The Windows run driver uses totally different code. It uses Named
  Pipes internally, which are _mostly_ equivalent to Unix named pipes,
  but with the slight difference that they are ephemeral: once the
  process that created them terminates, they are destroyed. That means
  that the run driver needs to treat each end of a pipe as a separate
  pipe pair and copy the information between them. This is a slight
  performance hit, but we don't care since it's Windows :)
* Supported compilers/IDEs for the batch file are CodeBlocks, Lazarus,
  Oracle JDK, and Python (CPython).
* Fixed #9