split refreshImage into refreshBounds and refreshImageResolution; two stages to allow us to refreshCells in between