Little refactoring of Automaton, trying to remove code duplication using abstract class
Clean buil-ins automaton