Fix fsearch by using a sharded file buffer
Each worker thread has it own stringstream per ShardedFileBuffer. All streams are joined and flushed to the file when a ShardedFileBuffer is destructed.
Flushing a ShardedFileBuffer is not thread safe and must not be called concurrently to any modifications to the ShardedFileBuffer.
Use a ShardedFileBuffer to acumulate and print all paths during fsearch.
Closes !351 (closed).
Edited by Maxim Onciul