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.
Merge pull request #279 from pentschev/adjacent_difference_temp_vector

Added temporary vector to adjacent_difference().