Add git snapshot alias

Snapshot the current working tree without removing the changes. This is
handy for refactoring when you want to keep going, but don't have a
clear commit point. (Not generally a good idea.)
Use the patience algorithm for git-diff