extracting the diff logic to it's own class for consistency. Currently handles an array of Brakeman::Warnings or plain hash representations.