perf: Optimize away a few more calls to 'git' when unstaging
The unstaging operation no longer calls any of the following:
git update-index --refresh
git diff-index --cached HEAD
git diff-index HEAD
We now simply unstage the file using 'git reset' and then ask
git for the list of all files using 'git ls-files -z'.
We can then classify each unstaged path as being either
modified or untracked based solely on whether or not each
path is a member of the set of known files.
This should noticibly speed things up when working with large
repositories.
Closes #48
Signed-off-by: David Aguilar <davvid@gmail.com>