support git notes

Show notes in commit buffer provided the value of new option
`magit-commit-show-notes' is non-nil.

Add new popup `magit-notes-popup', various commands to manipulating
notes (`magit-notes-edit', `magit-notes-remove', `magit-notes-merge',
`magit-notes-merge-commit', `magit-notes-merge-abort' and
`magit-notes-prune) and set notes references (`magit-notes"set-ref'
and `magit-notes-set-display-refs').

Also add a few utility functions (`magit-notes-read-args',
`magit-notes-popup-read-ref' and `magit-notes-merging-p').
Merge branch 'n/git-notes' into next