particles[smoke]: Add canvas boilerplate and first pass at smoke effect.