renamed FreeGroupAutomorphism to EndomorphismSLP
Convert EndomorphismSLP to a template
Refactoring to use std::map<TerminalSymbol, SLPVertex> instead of SLPSet