PixelCanvas subclasses Frame
add canvasID getter to PixelCanvas
move Subscriber properties to private namespace
move Frame properties to private namespace and add getter methods
extract ClickCanvasInterface from ModelBuilder