What is the purpose of all the includes

Reliably? There are a few places:

  • inbound calls from trunks can be configured to go to a user defined context, which in turn sends the call to from-trunk
  • diaplan hooks, there are a handful of “hook” macros that are called immediately prior to dialing, such as macro-dialout-trunk-predial-hook. You can safely define these macros in extensions_custom.conf.
  • Custom Destinations. If you want to create a call flow through a block of dialplan, you can define a custom destination, and close your dialplan with a Return to send the call back to the GUI destination.

and last resort:

  • by redefining existing generated contexts in the override file.