complete automaton

this implementation builds the automaton in O(n²) (Automaton.combinations has exactly n(n+1)/2 steps)