Correct stage/commit behaviour; support partial commits (i.e. checked files).

Improve commit dialog.