Initial client implementation.