docs: def ask_questions(self):
          """
          Obtain config settings from the user.
          """
          out_config = {}
  
          for key in c.CONFIG_QUESTIONS:
              section = key[1]
              print
              for question in section:
                  answer = utils.ask(question[1], question[2])
                  out_config["{0}_{1}".format(key[0], question[0])] = answer
  
          for key in c.CONFIG_MULTIPLE_CHOICE_QUESTIONS:
              section = key[1]
              print
              # keep going until we get what we want
              while True:
                  input = utils.ask(section[1], "")
                  if (input.isdigit() and
                          int(input) > 0 and
                          int(input) <= section[0]):
                      answer = input
  
                      break
                  print
  
              # store the answer as 1 less than it is, we're dealing with
              # a list to select the number which is 0 indexed
              answer = int(input) - 1
  
              if key[0] == "license":
                  out_config["license_type"] = c.LICENSE_TYPES[answer][0]
                  out_config["license_url"] = c.LICENSE_TYPES[answer][1]
  
          # merge in defaults without asking questions
          merged_config = dict(c.CONFIG_DEFAULTS.items() + out_config.items())
  
          return merged_config