The client now correctly handles the two callbacks for sample rate and
buffer size. It also exposes the state, so that actual client
configuration can determine what configuration canor cannot be done (and
thus considered valid or invalid)