Worker wrapper package

This change defines the package that will be used by the worker wrapper
program. It implements the interface defines in the standalone interface
spec for the wrapper process.

It tests the library with a bunch of simple scripts that exercise each
of the components of the interface.

This relies on a couple mock changes in another PR which is why
the tests are failing.
I'd argue that readability suffers if you start adding lots of third party dependencies, since each time one is used the reader needs to understand how that library works.