Tearing out client library and cli into their own modules. Closes #20 Closes #21