Trying to extract a client module

This hasn't gone so well, but we're trying to extract a client module
and investigate what the interface between the two modules should look
like.