Add optimizeHMD flag to Controller

@pehrlich and I agreed that `this.background` and `this.optimizeHMD` should be initialized to `null` to ensure a protocol message is sent the first time `setBackground` or `setOptimizeHMD` is called, regardless of client's state.
(`this.background` was left out in the past, but used in `setBackground` short-circuit check for repeated calls)