docs: def choice_prompt(prompt, choices=None, choice=None):
      '''Ask the user for a prompt, and only return when one of the requested
         options is provided.
  
         Parameters
         ==========
         prompt: the prompt to ask the user
         choices: a list of choices that are valid, defaults to [Y/N/y/n]
      
      '''
      if not choices:
          choices = ["y", "n", "Y", "N"]
  
      print(prompt)
      get_input = getattr(__builtins__, 'raw_input', input)
      pretty_choices = '/'.join(choices)
      message = 'Please enter your choice [%s] : ' %(pretty_choices)
      while choice not in choices:
          choice = get_input(message).strip()
  
          # If the option isn't valid, this is shown next
          message = "Please enter a valid option in [%s]" %(pretty_choices)    
      return choice