State machine done right
gitignore
State machine working