Pipe colony-compiler output instead of writing a temp file

  * Doesn't leave a file in /tmp
  * Avoids a symlink race vulnerability
  * May not break less on Windows
  * Checks that the colony-compiler path is nonempty, because
    os.exit didn't return the passed error code before (#663)