Two version for testing

Each is wrapped in a closure to give access to a unique name at window
scope.
See if buffer manipulation is faster

Dumb version - Iterates the whole buffer, checking the modules array
each pass.
Added more drawing tests and ability to specify which programatically
Fixed test to have seperate stroke/fill drawing function

Improved performance of offscreen drawing...
No need to fill rect in this case.
Fixed rendering of blackonly option & additional attempts at optimization

- Using ceil of width/height and floor of nLeft/nTop fills in the gaps
and provides a result more similar to the original.
- Draw back is that at some sizes, the qrcode looks a bit denser than
at others, but it readers still read it properly.
Merge remote-tracking branch 'gthru/optimization'
chore(indent): convert to spaces