public State addState(String name, String description) throws DuplicateStateException
protected void addState(State state)
    public State addState(String name,                          String description) throws DuplicateStateException    {        if ( this.states.containsKey( name ) )        {            throw new DuplicateStateException( this,                                               name );        }        State state = new State( name,                                 description );                addState( state );        return state;    }