Improve the way package branches are updated

Option --keep-cr passed to 'git am' so we don't choke on changes that
affect files with CRLF line endings. (This was originally avoided by
using --whitespace=fix which was reverted in commit
6b80fcf3882730649136c8b2604c89bace48e11b.)

Option -k passed to both 'git format-patch' and 'git am' as it's
generally a good practice.