Lucy: A concise language for describing Finite State Machines