move general client stuff into a new library
begin to test clone