belongs_to :touch should touch old record when transitioning.

In testing the new cache_digest functionality of Rails 4 I ran across something that might not be a bug, but to me is unexpected behavior. Assume we have a model named Person that belongs to car with the touch functionality enabled.

    car_1 = Car.create
    car_2 = Car.create

    person = Person.create :car_id => car_1.id

At this point car_1 gets touched as expected.

    person.car = car_2
    person.save

At this point car_2 gets touched as expected, but car_1 is not touched. This leads to a situation where car_1's cache will not be busted. I submit that it should.

Basically when an object that belongs_to another object had a previous relationship. I think both should be touched.

I don't mind writing the code for this behavior, but I wanted to get some feedback from everyone else to see if there was a reason this wasn't ever implemented, or something i'm not thinking of.

Thanks