shared: provide a shared object file

This paves the way for unit testing in Python.  I sense someone
will be very happy about this.