Added abort button. I think it should work.
Added primitive error handling.