I'm wondering whether we should make these two arguments to ``switch_state`` non-optional. If someone is calling ``switch_state`` they should really be explicitly setting all of ``name``, ``metadata`` and ``creator_opts``, otherwise they're not properly specifying which state to change to? This isn't a method people are likely to call often.