[graphics] canvas objects should inherit from the canvas prototype
[graphics] double inclusion protection to painter API (to be renamed)
[graphics] add pixelDraw method for canvas objects