Try our the 'patience' diff algorithm