I don't think the internals are as important as the public API. And in conjunction with `closeSubState()`, `openSubState()` makes a lot more sense semantically.

I would be fine with replacing that code for the sake of clarity, I agree that calling that function with null looks weird.