fuse: Reopen file and skip to desired offset if seek is not supported

The fuse daemon can fail when client attempts to seek backwards and seek
is not supported by the concrete backend. There is fallback for forward
seeks using `g_input_stream_skip`. Let's reopen the file and use the same
approach also for backwards seeks. This is pretty ugly to reopen the file
but similar approach is used already to emulate read/write mode.

Fixes: #441
3 jobs for wip/oholy/fuse-seek-fallback in 1 minute and 15 seconds (queued for 1 second)
Status Job ID Name Coverage
passed #554724


manual #554725
allowed to fail manual
manual #554726
allowed to fail manual