@enthdegree:
1. It depends ;o). But generally, no, you don't want to refresh in full. (The issue isn't going to be power so much as performance, though). The waveform mode enum has a lot of info about dos and don'ts in fbink.h if you want more context.
2. a submodule and a static link? c.f.,
InkVT as a potential example (or, well, KFMon, would perhaps be easier to follow).
3. I would punt that off to the user, unless you like maintaining horrible-to-maintain stuff. In which case, something based on KOReader's startup script.