Initialize total/done fields in add_background_job

To do not do this in other places.
Extend background unit with general bg thread

This allows for easier creation on new background tasks.
Introduce mark for tasks with undefined total work
Fix indentation in fileops.c:entry_is_dir()
Add utils/fs.c:remove_dir_content() function

Removes directory content.
Rewrote trash content removal with system calls

And in background thread.

This is to omit unportable invocation of shells.

Thanks to lyuts and ckester.

Related to #42 at ksteen/vifm and to bug report #46 at SourceForge.
Document that :empty creates task in :jobs menu
Merge branch 'empty-trash-with-system-calls'

Rewrite trash content removal with system calls in background thread to
omit unportable invocation of shells.  It's also visible in :jobs menu.

Thanks to lyuts and ckester.