(SERVER-61) improvements to the ExecutionStub

* The execution stub now returns an instance of
  Puppet::Util::Execution::ProcessOutput, as per the contract of
  Puppet::Util::Execution.execute.

* Add basic spec/unit tests

* In java, close the reader used to read the process's STDOUT.

* In ruby, close the file handles passed-in for STDIN, STDOUT, and
  STDERR; we're not using these (this is implemented in java instead),
  but Puppet::Util::Execution.execute does not close them when an
  execution stub is installed.
Interesting.  It sounds like warrants some more thought.  However, just to be clear - the point you're making has nothing to do with the changes in this PR, right?  The changes in that file were minor (just added a call to `.close` and changed the return value to be an object containing the process exit code).