def use_data_with(key, value)
      element = send(key.to_s.tr(' ', '_'))
      set_and_select(key, element, value)
      check_and_uncheck(key, element, value)
    end
def use_data_with(key, value)
      element = send(key.to_s.tr(' ', '_'))
      set_and_select(key, element, value)
      check_and_uncheck(key, element, value)
    end
This is the method that is delegated to in order to make sure that
 elements are interacted with appropriately. This will in turn delegate
 to `set_and_select` and `check_and_uncheck`, which determines what
 actions are viable based on the type of element that is being dealt
 with. These aspects are what tie this particular implementation to
 Watir.