Starting refactor to transitionable