Refactor the situ client, pulling the Client class out into its own header and source files