Fix for #3. TODO: I'd still like the consumer code to not require implementing their onRender callback in V8