docs: def remove_settings(file_path, retry_count=10, remove_dir=False):
  
      '''
          a method to remove a file using a child process
  
          http://www.petercollingridge.co.uk/blog/running-multiple-processes-python
          https://docs.python.org/3.5/library/multiprocessing.html
  
      :param file_path: string with path to file to remove
      :param retry_count: integer with number of attempts to remove before error is thrown
      :param remove_dir: [optional] boolean to remove empty parent directories
      :return: None
      '''
  
  # validate inputs
      title = 'remove_settings'
      try:
          _path_arg = '%s(file_path=%s)' % (title, str(file_path))
      except:
          raise ValueError('%s(file_path=...) must be a string.' % title)
      if not isinstance(retry_count, int):
          raise ValueError('%s(retry_count=...) must be an integer.' % title)
      elif retry_count < 1:
          raise ValueError('%s(retry_count=%s) must be greater than 0.' % (title, retry_count))
  
  # create a child process to remove file
      from multiprocessing import Process
      child_process = Process(target=_remove_settings, args=(file_path, retry_count, remove_dir))
      child_process.start()