alreadyAssociatedWith(model, association) {
    let associatedModelOrCollection = this[association.name];

    if (associatedModelOrCollection && model) {
      if (associatedModelOrCollection instanceof Model) {
        if (associatedModelOrCollection.isSaved() && model.isSaved()) {
          return associatedModelOrCollection.toString() === model.toString();
        } else {
          return associatedModelOrCollection === model;
        }
      } else {
        return associatedModelOrCollection.includes(model);
      }
    }
  }
Used to check if models match each other. If models are saved, we check model type
    and id, since they could have other non-persisted properties that are different.

    @public
    @hide