The task is to write a program (in C or Python) that creates a child process
that will *successfully* run the puzzle program distribued in this lab.

In order to successfully run the puzzle program, your parent program must
start puzzle with the appropriate arguments and environment variables and
use a pipe to communicate with the child process.

This is not an easy thing to do. If you look at the file shell-run.txt, you
can see how the puzzle program can be run from the shell.

Start by doing the following....
  1)  Figure out what the puzzle program is doing
  2)  Add useful printf statements to the puzzle program, so that you
      can see what it is objecting to.
  3)  Start writing your solver prorgram.
  4)  Write code to create a child process.
  5)  Write code to execve puzzle within the child process. Be sure you pass the
      correct arguments to execve!
  6)  Write code to create a pipe and "dup" the pipe to the right file descriptors.
  7)  Write code send the right number to the child process.
