Replaced menu classes with finite state machines.

Replaced the stateless menu classes with finite state machines.

Added the ability to end a recording by dtmf.

Added the ability to stop the current message playback when a new dtmf
command is entered while listening to messages.

Included logic in the state machines for authentication and
authorization.