Arduino C++ finite state machine library [AgileStateMachine]

HI @J-M-L and thanks for your comment!
I hadn't thought about it, but it's great advice and will be the next thing I do.

As for "a templated, OO based approach with everything of static size" I'm not sure I understand exactly what you mean. I already had plans to include methods to add States, Action and Transitions more ore less like this (so without the "new" constructor)

void addState(State &state) {
	state.setIndex(m_states.size());
	m_states.append(&state);
}
....
....
State stateA ("Name", 0, 1000, fn_a, fn_b, fn_c);
fsm.addState(stStateA);