Account for unmerged files when committing.
Account for unmerged files when committing.

The `git checkout --force` command leaves unmerged files alone rather
than removing their modifications. This change adds `git reset --hard`
to ensure a clean initial working directory.

This change also adds distinct failure messages for the case where the
patch file yields no modifications (index is empty) as compared to when
the commit fails (previously, due to unmerged changes).

wayfair/hussar