Return E_ABORT when error occurs.

Detail:
 7z.dll sometimes hangs if OutStream::Write returns E_FAIL.
 Therefore, E_ABORT is returned by only SetTotal and SetCompleted.
Add more tests for kill.
Merge remote-tracking branch 'origin/master'