widgets: refactor DAG diff widgets to widgets.diff

Signed-off-by: David Aguilar <davvid@gmail.com>
dag: fix repr() implementation

self.parents is a list of Commit class instances; use parent.sha1 when
constructing the repr string.

Signed-off-by: David Aguilar <davvid@gmail.com>
qtutils: add help_icon()

Signed-off-by: David Aguilar <davvid@gmail.com>
git xbase: add an inline diff viewer

Add a diff viewer (the same as the one used in the DAG viewer) to
display commits as they are selected in the list.

Allow launching an external diff via "git difftool".
Move the help message into a menu action.

Related-to: #1

Signed-off-by: David Aguilar <davvid@gmail.com>