dag: Add modified files list to dag

Currently the diff viewer in dag lists all changes within a commit. There is no way to refine the diff to a single file. This is problematic for a commit which have many files modified.

Add a file widget to dag. It will display the list of modified files when a commit selected. Selecting a file in the list will make the diff viewer display the diff for that file only.

Suggested-By: @systemovich via github.com in #217


I'm not really familiar with python, so feel free to give feedback. 

In diff.py, I assigned the sha1 to the object when intercepting commits selected event. I need that sha1 when doing the file diff. I don't like that approach, but I can't think off any better solution. Passing it off from the FileWidget means I need to store the sha1 in FIleWidget, or put it in FileTreeWidgetItem (putting same sha1 in all file entries) If you have a better idea, let me know.