Initial client-server implementation