fat: don't accidentally bump file size to 4096+ bytes when writing back a cached block
fat: improve the cluster write loop in FatFilesystem::write
kernel: call cache writeback callbacks in a thread, so they are not run in a timer handler's context