code: def dispatch_subcommand(self, parser):
          '''
          Note that the way we're doing this is elegant, but dangerous.
          It doesn't require, but does encourage, us to define no Application#
          methods beyond those corresponding to the supported subcommands
          '''
          # read in the subcommand
          args = parser.parse_args(sys.argv[1:2])
  
          # check that the subcommand is good
          if not hasattr(self, args.subcommand):
              print('Unrecognized command.')
              parser.print_help()
              exit(1)
  
          self.configs = ConfigurationLoader(DEFAULT_USER_CONFIG_PATH).load()
  
          # use dispatch pattern to invoke method with same name
          getattr(self, args.subcommand)(f dispatch_subcommand(self, parser):
          '''
          Note that the way we're doing this is elegant, but dangerous.
          It doesn't require, but does encourage, us to define no Application#
          methods beyond those corresponding to the supported subcommands
          '''
          # read in the subcommand
          args = parser.parse_args(sys.argv[1:2])
  
          # check that the subcommand is good
          if not hasattr(self, args.subcommand):
              print('Unrecognized command.')
              parser.print_help()
              exit(1)
  
          self.configs = ConfigurationLoader(DEFAULT_USER_CONFIG_PATH).load()
  
          # use dispatch pattern to invoke method with same name
          getattr(self, args.subcommand)()
docs: Note that the way we're doing this is elegant, but dangerous.
          It doesn't require, but does encourage, us to define no Application#
          methods beyond those corresponding to the supported subcommands