API Fix for Scanner Rendering

Abstract the DWT rendering API to include a way for subclasses to change the way they internally store region values. This allows the scanner to render with its special region storage.

Also updates the scanner API to include a setter.