KAZOO-624: start to work on timeouts, interdigit and otherwise

refactor receive clauses to call into receive_event/1
refactor collect_digits to use a record to ease arg passing
KAZOO-624: cleanup specs, and compact db regularly
KAZOO-624: add spec for do_collect_digits
KAZOO-624: ignore down pids that died normally
KAZOO-624: look for interdigit timeout in data

refactor the call out into sub functions too
KAZOO-624: make exec/2 more flexible in the types of functions usable
KAZOO-624: set and use a bunch of timeouts in system_config
KAZOO-624: updated specs to use better types
KAZOO-624: updated cf_dynamic_cid

use prompt and collect_digits with supplied interdigit timeout
use named funcitons in whapps_call exec
KAZOO-624: update specs and formatting in cf_group_pickup*
KAZOO-624: add interdigit timeout option to cf_menu

use prompt/collect_digits independent of each other
KAZOO-624: update specs, remove unused branches from cf_offnet
KAZOO-624: update specs, remove unused branches in cf_park
KAZOO-624: update specs in cf_resources
KAZOO-624: update cf_tempral_route with interdigit timeout

use play/collect_digits independent of each other
update specs
KAZOO-624: update cf_voicemail with interdigit option

use prompt/collect_digits independently
update specs
move magic numbers into system_config values
KAZOO-624: update specs for exec/2 in whapps_call, and other specs
KAZOO-624: add interdigit timeout work to cf_call_forward collection
KAZOO-624: add interdigit work to cf_hotdesk collection
KAZOO-624: add interdigit work to cf_menu