Refactoring: NFA's can have multiple final states + the body of DFA minimization code added.