Added another test and a little docs

Canvas.cpp: Moved the mutex lock in drawPoint() back down as I
noticed some point corruption.
Canvas.h: Added a note for updateScreenBuffer().
tests.cpp: Made getPixelsFunction() and greyScaleFunction() scale
the image they were drawing with the size of the window.
Fixed greyScaleFunction() drawing half upside-down.
Added a second greyscale function that copies from one canvas
to another.