ensure side loaded models are distinct for has_many :through