Finite State Machine

AKA Avoiding Spaghetti code

Establishing a call