Fill in state_machine, metrics, and main.go