fixed Automaton.removeNondistinguishableStates() by implementing Brzozowski's Algorithm