Make magit-ediff-restore work when there is several diff open at once.

We use local-variable set in the ediff control buffer by the
startup-hook, and the ediff-cleanup-hook in place of ediff-quit-hook.
Added one forgotten startup-hook in magit-ediff*
When merging conflict, use ediff handling of merged file
When solving conflict, ask ediff to look only at conflicting part of files
In magit-show, save file-name and version of the shown file
An interactive function to save current buffer as content of the index
in magit-ediff-restore, before killing the index, offer to stage it
Add my copyright
Fix magit-guess-branch: do not return t

For example, an error occurred when magit-guess-branch is returning t
in magit-default-rev.  This patch fixes the problem.
Merge pull request #537 from tkf/fix-magit-guess-branch

Fix magit-guess-branch: do not return t
Merge branch 'master' into next