Why are State Machines useful?