Optimistic locking destroy bug

There seems to be a problem when using optimistic locking with
:dependent => :destroy and :touch => true.  This pull request
attempts to expose the error although I do not yet have a
fix.  Please see the new test in locking_test and note that
it fails.  This failure means that when attempting to destroy
a model object with :dependent => :destroy on a realtionship
where the inverse has :touch => true results in:

ActiveRecord::StaleObjectError: Attempted to destroy a stale object