added canvas buffer example, still needs some work and an explanation