code: def lower_and_check_unique(dict_to_check):
      
      if dict_to_check == None:
          return None
      else:
          to_return = {}
          for key in dict_to_check:
              new_key = key.lower()
              if new_key == "jobtype":
                  new_key = "job_type"
              if new_key in to_return:
                  raise Exception(
                      "Multiple instances of key " + new_key + " found!")
              else:
                  try:
                      to_return[new_key] = dict_to_check.get(key).lower()
                  except AttributeError:
                      to_return[new_key] = dict_to_check.get(key)
          return to_return
docs: Takes a dictionary and makes all the keys lower case. Also replaces
      "jobtype" with "job_type" just so that key specifically can be called
      elsewhere without ambiguity. Finally, ensures that multiple identical
      keys, that differed only due to different capitalizations, are not
      present. If there are multiple equivalent keys, an Exception is raised.
  
      Args:
          dict_to_check (dict): The dictionary to check and standardize
  
      Returns:
          to_return (dict): An identical dictionary but with all keys made
              lower case and no identical keys present.