Defines classes which implement determinitic finite automata and their construction.