StateHolder with customizable exception factory and ITransitionable