Call enter / exit methods on states that are pushed / popped.
Call obscure / reveal methods on states are hidden / unhidden by push / pop.