tests: stress: added append tests

Also use only subset of ascii in data to simplify debugging.
XXX: added scatter/gather APIs
XXX: removed types
XXX: removed compression
tests: stress: simplify retry logic
mobjects: lock backend during eblob_remove_blobs()
tests: stress: test three read paths
tests: stress: test three stage write
blob: replace linux-only EBADFD with EILSEQ
blob: added __attribute_always_inline__ helper
blob: renamed eblob_update_index() to eblob_commit_disk()

Now it's consistient with eblob_commit_ram()
blob: always update data and index file simultaneously.

This fixes bug when datafile index is not updated during overwrite.

Also removed cfg.bsize handling for now.
hash: simplified hash lookups

Now that we have only one rctl per hash we can greatly simplify hash.

Also while here speedup l2hash: do not look in hash in case l2hash
lookup failed.
And fix stats in case of errors: update hashed only if err == 0
XXX: copy record only if it's really needed

XXX: This is very lousy implementation - rewrite
blob: less extensive logging
misc: define offsetof only if it's not defined
blob: replaced __eblob_unused with __attribute_unused__
data-sort: speedup notes
blob: use memcmp in eblob_id_cmp()

On lucid there is 10x boost on using non-gcc's memcmp:
$ gcc -O3 -o test test.c && ./test
Time: 245 ticks (4279 memcmp/tick)
$ gcc -O3 -fno-builtin-memcmp -o test test.c && ./test
Time: 22 ticks (47662 memcmp/tick)

test.c can be found here http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43052
tests: stress: remove obsolete usleep()