code: public void addEpsilon(NFAState<T> to)
      {
          Transition<NFAState<T>> t = new Transition<>(this, to);
          Set<Transition<NFAState<T>>> set = transitions.get(null);
          if (set == null)
          {
              set = new HashSet<>();
              transitions.put(null, set);
          }
          set.add(t);
          edges.add(to);
          to.inStates.add(this);
      }
docs: Adds a epsilon transition
  @param to