Check if user response is in a list of valid entires.
  If an invalid response is given re-prompt user to enter
  one of the valid options. Do not proceed until a valid entry
  is given.

  Parameters
  ----------
    response : string
      Response string to check.

    validList : list
      A list of valid responses.

  Returns
  ----------
    string
      A valid response string.

def ValidUserResponse(response, validList):
  """
  Check if user response is in a list of valid entires.
  If an invalid response is given re-prompt user to enter
  one of the valid options. Do not proceed until a valid entry
  is given.

  Parameters
  ----------
    response : string
      Response string to check.

    validList : list
      A list of valid responses.

  Returns
  ----------
    string
      A valid response string.
  """
  if response in validList:
    return response
  else:
    prompt = "Unknown response given - please reenter one of [{0}]: ".format('/'.join(validList))
    response = goodlogging.Log.Input("DM", prompt)
    return ValidUserResponse(response, validList)