Added temporary vector to adjacent_difference().

The intermediary temporary vector fixes an issue where first element of a work
group can be corrupted when output vector is the same as the input.