To begin with, as a node author, you just use Context. You don't get to pick if its persistent or not as that is up to the end user.
No. It only flushes when there are changes to flush, but will ensures it doesn't flush any more frequently than the configured interval.
Right.
No. The context api only lets you get/set values - that is all. You don't know what instance of context plugin the user has configured.
Yes. Assuming NR is shutdown cleanly, then the filesystem context plugin flushes its contents as part of its closing down. If NR is abruptly halted then any unflushed data will be lost.