s1543: start worker threads for queue right after filesystem init

This second init method of FUSE is really where these threads should
be started.
s1543: use a more appropriate variable name to flag queued state
s1543: wait for queued/running flush threads to finish

The worry is that unmounting the filesystem may not properly
flush nodes that are sitting in the queue. This was probably not
a problem before since FUSE seems to detect running flushes
and doesn't allow you to unmount. However, it won't know
about queued flushes. The FUSE/vofs destroy method should
now block until the queue is empty.
s1543: make it possible to steal exclusive locks
s1543: acquire write lock when queued, release within worker thread

We want to acquire the writer lock as soon as a flush is queued, but
we don't release it until the worker thread has finished with it.
In order to do this, the flushNode method which runs in the worker
thread steals the lock.