Coding Project - Programming Finite State Machines