handle new client setup in new thread

prevents the server from blocking new connections while a client is
updating files