Improve commit messages.

Commits can now have message notes (different from git notes).
Additionally, we always include some extra data in the commit,
defaulting it to the message.