Check the three accepted values, that unset and empty stay off, and that
numeric, differently cased, padded and unknown values are rejected with a
message that names the variable.
Check that off never reaches the backend, that start and stop reach it
once each and cannot restart a stopped session, that an unavailable
backend is silent in auto and logged once in on, that a refusal is logged
once in both modes, that throwing backends are contained, and that
concurrent starts reach the backend once.