Track framebuffer memory dirty more carefully

Fixes #6296, Grand Knights History slowdown during battle transition.  May also more correctly identify block transfer downloads.

Specifically the slowdown was because `srcBuffer == currentRenderVfb_`, and we had to assume it could've been updated since it was the current target.  Now, we dirty on flush, so we know if it's dirty regardless of whteher it's the current target or not.

-[Unknown]