data-sort: swap bclts instead of fds

Previous implementation swapped index_fd, data_fd, sort.fd and whole
bunch of other information under working code. Now we creating new base
and replasing old one with this one in linked list.
This fixes whole bunch of small races of previous implementations.

This approach also allows grace period before closing base which fixes
possible bugs caused by third party software caching fd's provided by
libeblob.
data-sort: reinproduced grace period before closing fd

This should help against software that caches libeblob fd's for small
period of time.
data-sort: remove now useless checks
data-sort: eblob_data_unmap() will be called by _eblob_base_ctl_cleanup()
data-sort: replace bctl only after successful swap