public StateCtx<E, C, IN> addTransition(C inputClass, E destination, 
            TransitionListener<IN, C> callback) {
        _transitions.put(inputClass, destination);
        if(callback == null)
            _transitionListeners.remove(inputClass);